Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
来源:互联网 发布:我欲封天宝珠进阶数据 编辑:程序博客网 时间:2024/06/06 18:24
一、OpenCV移植到android之后,开发中遇到错误:android fatal signal 11(SIGSEGV) at 0xdeadbaad (code=1).很是纠结,参考https://community.freescale.com/docs/DOC-93378 http://www.linkedin.com/groups/Application-crash-android-40-higher-86481.S.171547732,有的人说是程序中使用AsyncTask的问题,碰巧我程序里还真使用了。但经过仔细研究发现,如果报错:android fatal signal 11(SIGSEGV) at 0xdeadbaad (code=1).最先排查的还是本地C/C++代码的错误。 原来是opencv运算时矩阵维数错误的原因,导致程序奔溃。
二、原先Application.mk文件里APP_ABI=armeabi armeabi-v7a,所以生成的libs文件夹里总有两套这种东西。经查,armeabi是指的该so库用于Arm的通用CPU,而v7a的CPU支持硬件浮点运算。因此armeabi通用性强,但速度慢,而v7a能充分发挥v7a CPU的能力。华为U9200cpu型号是OMAP4660,是A9的。查了半天也没看出来究竟支不支持硬件浮点运算。将armeabi去掉之后,原来的程序大小4.23M直接缩小至2.62M。运行良好,看来瘦身很关键啊。
三、原先在ndk-build编译本地库时,总是看到有libnative_camera_r2.2.2.so和一个r2.3.3.so生成,如下。奇怪的是,我在本地代码里根本没有使用camera模块。
借鉴这里http://stackoverflow.com/questions/9460424/opencv-on-android-duplicate-file-for-apk,在Application.mk文件里添加
OPENCV_CAMERA_MODULES:=off
果然,再次编译安装的时候两个camera的库不安装了!注意这句话写在Android.mk里无效。
- Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
- Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
- Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 错误 解决方案(android-ndk)
- Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 错误 解决方案(android-ndk)
- Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 错误 解决方案(android-ndk)
- 在生成android版本时候出现的蛋疼问题Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1),
- NDK编译的so文件armeabi和armeabi-…
- android NDK环境开发及生成so文件
- Android Studio NDK及so文件开发 以及常见错误
- Android NDK开发使用以及so文件生成和注意事项
- 《关于ndk jni开发和so文件的生成》
- Android NDK开发生成.so/.a库
- android ndk开发编译生成so文件
- android studio 2.3.2 ndk so的生成和使用
- android ndk 生成so
- Android Studio NDK及so文件开发
- Android Studio NDK及so文件开发
- Android Studio NDK及so文件开发
- StackOverflowError spaceOutOfMemoryError 通过jvm调优解决(转自http://blog.sina.com.cn/s/blog_790229d301015vz)
- gzip命令
- A. Twins
- Linux运行时I/O设备的电源管理框架
- .net中将GridView中的部分内容或者全部内容导出到Excel
- Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
- QWidget概述
- 企业文化之尊重
- java 调用ffmpeg,取时长,码率与截图.
- df 命令
- 时间飞逝
- du 命令
- 计算分词的Tf-idf值
- The type javax.http.HttpServletRequest cannot be resolved.It is indirectly