Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
2014-07-08 14:57
417 查看
/article/1388854.html
一、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文件里添加
果然,再次编译安装的时候两个camera的库不安装了!注意这句话写在Android.mk里无效。
更多2
上一篇Android摄像头开发:拍照后添加相框,融合相框和图片为一副
图片
下一篇Android摄像头开发:实时摄像头视频预览帧的编码问题(二)
顶3
踩
一、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文件里添加
<code style="border: 0px; padding: 0px; margin: 0px; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; vertical-align: baseline;"><span class="pln" style="border: 0px; padding: 0px; background-color: transparent; margin: 0px; vertical-align: baseline;">OPENCV_CAMERA_MODULES</span><span class="pun" style="border: 0px; padding: 0px; background-color: transparent; margin: 0px; vertical-align: baseline;">:=</span><span class="pln" style="border: 0px; padding: 0px; background-color: transparent; margin: 0px; vertical-align: baseline;">off </span></code>
果然,再次编译安装的时候两个camera的库不安装了!注意这句话写在Android.mk里无效。
更多2
上一篇Android摄像头开发:拍照后添加相框,融合相框和图片为一副
图片
下一篇Android摄像头开发:实时摄像头视频预览帧的编码问题(二)
顶3
踩
相关文章推荐
- 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)
- Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 错误 解决方案(android-ndk)
- Android开发-----NDK开发中的一些常见错误及解决办法
- 利用android_ndk开发OpenGLES如何利用上层Bitmap生成纹理
- Android Eclipse 进阶JNI开发一: NDK自动编译于eclipse自动生成jni头文件
- Android Project from Existing Code 生成 R 文件错误、失败等问题解决办法 - 持续更新
- [转]Android通过NDK调用JNI,使用opencv做本地c++代码开发配置方法
- Windows下Android+NDK+OpenCV开发环境搭建
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- android开发给eclipse安装ADT插件遇到NDK pluign无法安装的错误
- Android设备上opencv开发:获得Camera数据
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 边缘检测 范例代码
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 边缘检测 范例代码
- Android开发-----NDK开发中的一些常见错误及解决办法
- 〖Linux〗Qt5.2.0+gsoap开发Android的NDK程序遇到错误的解决
- 解决利用NDK开发android版本的opencv应用dlopen failed: could not load library libopencv_java.so