opencv的android.mk,android-opencv 版本下JNI Android.mk文件的书写
不能利用 include $(all-subdir-makefiles)
会报重复引用的错误。
AndroidNDK:Tryingto define local module 。。。opencv。
故放弃采取分文件夹写.mk文件的策略。
参考以下工程:
http://code.google.com/p/android-opencv-panorama/source/browse/android/pano/jni/Android.mk
解决方案如下:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
OPENCV_CAMERA_MODULES:= off
include ../includeOpenCV.mk
ifeq ("$(wildcard $(OPENCV_MK_PATH))","")
#try to load OpenCV.mk from default install location
include $(TOOLCHAIN_PREBUILT_ROOT)/user/share/OpenCV/OpenCV.mk
else
include $(OPENCV_MK_PATH)
endif
NEAR_C_INCLUDES := $(LOCAL_C_INCLUDES)
NEAR_STATIC_LIBRARIES := $(LOCAL_STATIC_LIBRARIES)
NEAR_CFLAGS := $(LOCAL_CFLAGS)
########################
第一个。。。
############第二个############
include $(CLEAR_VARS)
LOCAL_C_INCLUDES := $(NEAR_C_INCLUDES)
LOCAL_STATIC_LIBRARIES := $(NEAR_STATIC_LIBRARIES)
LOCAL_CFLAGS := $(NEAR_CFLAGS)
。。。
P:
Java.lang.UnsatisfiedLinkError.
cannot load library:...
Ans:
Best guess with what information you have provided, The library you are trying to load needs some dependencies to be loaded before it.
For example:
System.loadLibrary("bullet");
System.loadLibrary("irrlicht");
System.loadLibrary("gamescript");
gamescript library needs other 2 library to be loaded before it. Otherwise, it gives me the same error you have mentioned.
若为动态库, 需要注意在java层代码里加载相关的每个动态库!!!
/**
* Loads Native Libraries
*/
static{
System.load("/data/data/net.pandorica.opencv.pano/lib/libprecomp.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libutil.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libmatchers.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libautocalib.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libblenders.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libexposure_compensate.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libmotion_estimators.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libseam_finders.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libwarpers.so");
System.load("/data/data/net.pandorica.opencv.pano/lib/libopencv_stitcher.so");
}
若为静态库, 注意必须是+=,要不然报错!
Be careful with the following line, it should be like this:
LOCAL_STATIC_LIBRARIES+=libfastcv
not like
LOCAL_STATIC_LIBRARIES := libfastcv
类似:
http://stackoverflow.com/questions/7346580/problem-using-opencv2-3-1-with-android-native-activity
I solved the problem there. It was my fault (as usual xD) the problem was I was writting in my Android.mk this line: LOCAL_STATIC_LIBRARIES := android_native_app_glue, instead of this line: LOCAL_STATIC_LIBRARIES += android_native_app_glue. I needed the "plus" symbol, in order to add the new library and not deleting the previously loaded. Thanks anyway!!
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
siox error:
expected unqualified-id before numeric constant -Y _D 变量重新命名,用_YPoint _DPoint 代替!
今天编译库的时候出现这个问题unqualified-id before numeric constant,是因为变量重复定义了,主要是变量与宏定义同名了,及以下模式:
一个头文件定义一个接口体,
class XXXClass{
const static int MAX_PATTERN_NUM = 1024;
}
然后在另外一个文件定义宏如下:
#define MAX_PATTERN_NUM 100
这时就会出现以上的错误
Linux gcc 编译出错 “expected unqualified-id before numeric constant ”
原因很可能是所有大写的名字常常被用于预处理宏,真的需要采用常用的习惯的命名原则,不然真不好查。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
解决办法:1. 把以前的早版本 apk文件卸载
进入菜单settings->applications->mange
applications-> select theapplication->select "unistall".
2.
把以前的apk文件都给删除了。删除方法:命令 进入tools文件夹下,
adb shell
cd data
cd app
ls,就可以看见之前的apk文件,用rm文件名,就可以把它删除。(模拟器要处在运行的状态下)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Android用ImageView显示本地和网上的图片
/**
* 加载本地图片
* http://bbs.3gstdy.com
* @param url
* @return
*/
public static Bitmap getLoacalBitmap(String url) {
try {
FileInputStream fis = new FileInputStream(url);
return BitmapFactory.decodeStream(fis);
} catch (FileNotFoundException e) {
e.printStackTrace();
return null;
}
}
opencv的android.mk,android-opencv 版本下JNI Android.mk文件的书写相关推荐
- android源码中的ndk,如何在不需要Android操作系统源代码的情况下在Android NDK中创建新的NativeWindow?...
我想编译一个Android OpenGL控制台应用程序,您可以直接从控制台启动Android x86或从Android x86 GUI中的Android终端应用程序运行.如何在不需要Android操作 ...
- Android之SDK、NDK、JNI和so文件
Android之SDK.NDK.JNI和so文件 1. SDK Android SDK(AndroidSoftware Development Kit),即Android软件开发工具包,And ...
- quado编辑Android代码步骤,Ubuntu11.10下编译android内核源码
编译android源码时并不会自动编译android内核,因此需要手动编译这部分代码.编译内核所用的时间比编译android源码要少得多,只需一会就编译完成. 1.确定内核版本 进入存放android ...
- Android之获取指定目录下的所有特殊文件名字
1.获取指定目录下的所有特殊文件名字 比如我们在sdcard目录下的chenyu这个文件夹里面获取以so文件结尾的所有文件名 2.代码 public ArrayList<String> g ...
- Unity2017.1.1f版本下发布Android项目并插入UnityAds广告方法
Unity发布Android工程打包.apk必须完成的步骤: 1.安装JDK.SDK. 参考:安装JDK和SDK详细流程 2.设置Unity的Edit-Preferences-External Too ...
- 如何编译android的linux 内核,ubuntu下编译android内核(arm-none-linux-gnueabi-)
解压缩内核: $ mkdir -p android $ cd android $ tar xzvf ../linux-2.6.23-android-m3-rc20.tar.gz 会解压出来一个叫做ke ...
- 电视机一直显示android正在升级,L版本开机提示“Android正在升级或启动”
六. 手机down bin档前没有format data image 七.[debug手段]: 总结打trace的方式,这样可以定位出当前这个提示是哪个地方的原因(适用于L1版本). 首先,@Pac ...
- android api 打开慢,为什么下了android 4.1 的SDK后在本地用浏览器看api说明文档时,浏览器打开api的html文件很慢?试了好几款浏览器都一样。为什么?...
wpf程序热键的一个类 using System; using System.Collections.Generic; using System.Linq; using System.Runtime. ...
- android rom签名 作用,Ubuntu下折腾Android笔记(一)——ROM 签名 | 翅膀~
2010.8.30 UPDATE:java环境的配置也可以直接使用openjdk,打开终端 sudo apt-get install openjdk-6-jre 就可以了. ------------- ...
最新文章
- cortex m3 gcc项目_广东省住建厅党组书记赵坤到公司陆丰市污水PPP项目实地调研...
- INFORMATICA 的部署实施之 BACKUPRESTORE
- linux重启切换内核,centos7切换启动内核与切换启动模式的讲解
- Shell脚本学习-阶段二十七-命令解释一
- java中重试的使用工具
- 用自己的语言解释一段简单的汇编
- PHP数组和字符串函数
- 归并排序JAVA代码详解
- 运用Fluxion高效破解WiFi密码
- 【电脑讲解】硬件知识
- Java、JSP酒店客房管理系统
- 健康体检信息系统源码、医院体检源码 医院管理系统源码
- php 显示连接数据库失败,php数据库连接失败的原因及解决办法
- 电商订单后台管理系统
- 成都北大青鸟怎么样?
- 优思学院|做质量管理有七大工具,都是什么?
- Python开发者的画笔-turtle
- 【软件测试-实验-7】使用LR进行性能测试
- vue-qr 二维码插件使用
- 计算机三维动画的应用领域有哪些,三维动画的十大应用领域-晶彩数字科技