毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
OpenCV基于智能手机的人脸检测系统设计(3)
重启完Ecplise后,点击菜单"Window"->"Preference",打开了配置窗口,在左边选中Android,在右边输入 Android SDK的路径(即Android SDK的解压目录),点击"OK",如图5。至此环境配置完毕。
图5.配置SDK路径
至此,Android的Java开发环境搭建完毕。
2.2 本地编译开发环境——Android NDK、Cygwin
Android 应用程序开发采用Java 编程语言,但OpenCV 是用C/C++编写的程序,这就涉及到Java 与C/C++混合编程、Java 程序与C/C++程序互相调用的问题,故需要利用JNI 编写本地代码,并采用Android NDK 编译本地代码。而NDK编译本地代码需要在Cygwin模拟的unix/linux环境下进行。因此,在Windows 系统下,还需要安装与配置Android NDK与Cygwin。
2.2.1 交叉编译环境Cygwin
Cygwin是一个在windows平台上运行的unix模拟环境,它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作, 尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。Cygwin的主要目的是通过重新编译,将POSIX系统(例如Linux、BSD,以及其他Unix系统)上的软件移植到Windows上。
下载 Cygwin1.7 或更高版本用来在Windows 环境下模拟Linux 环境,在此Linux 模拟环境中利用NDK 对本地代码进行编译。安装cygwin,从Devel 树结构中获得autoconf2.1、automake1.10、binutils、gcc-core、gcc-g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、GNU Make 3.81共12个包,由于这些包都在Devel中,为免漏选,可直接将Devel选为“Install”,如图6。
图6.选择需要下载安装的工具包
完成安装后在桌面上会出现cygwin程序的快捷方式,运行此程序,在命令行窗口输入:cygcheck -c cygwin命令,会打印出当前cygwin的版本和运行状态,如图7,然后依次输入gcc –version,g++ --version,make –version,gdb –version等进行测试,如果都打印出版本信息和一些描述信息,如图8,则cygwin安装完成。此程序相当于Linux 模拟环境下的shell,完成命令行的输入。
图7.cygwin的版本和描述信息
图8.工具包的版本和描述信息
2.2.2 Android NDK及其配置
Android NDK ,即Android Native Development Kit,因此又被称为“NDK”。在此之前,Android平台的第三方应用程序均是依靠基于Java的Dalvik特制虚拟机进行开发的。NDK的公布可以让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。 Android程序运行在Dalvik虚拟机中,NDK允许用户使用类似C / C++之类的原生代码语言执行部分程序。
将下载的NDK解压后需要进行配置。在 Windows 系统中新建一环境变量,将其命名为NDK,变量值定义为NDK 所在文件夹的路径,但其目录结构必须是Cygwin形式。在Cygwin 所创建的Linux 模拟环境中,目录结构与Windows 环境不同,比如E 盘下“E:\undergrdt\tools\android-ndk-r8”文件夹,在Cygwin 模拟Linux 环境中的目录就是“/cygdrive/e/undergrdt/tools/android-ndk-r8”。
配置完成后,在Cygwin中输入命令“cd $NDK”,则会指向NDK所在的目录,如图9。
图9.cygwin指向NDK所在目录
2.2.3 利用Android NDK本地编译
Android NDK提供了一系列的工具,可以帮助快速开发C(或C++)的动态库。Android NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),利用Cygwin就可以创建出so。SDK可以自动地将so和Java应用一起打包成apk。
共4页:
上一页
1
2
3
4
下一页
上一篇:
云计算判题核的设计与实现+文献综述
下一篇:
FLASH MTV制作+文献综述
基于Apriori算法的电影推荐
基于PageRank算法的网络数据分析
基于神经网络的验证码识别算法
基于网络的通用试题库系...
python基于决策树算法的球赛预测
基于消费者个性特征的化...
浅析人工智能体系建设【5490字】
10万元能开儿童乐园吗,我...
中国学术生态细节考察《...
C#学校科研管理系统的设计
承德市事业单位档案管理...
神经外科重症监护病房患...
公寓空调设计任务书
医院财务风险因素分析及管理措施【2367字】
国内外图像分割技术研究现状
志愿者活动的调查问卷表
AT89C52单片机的超声波测距...