一、下载Android NDK
您可以下载NDK r8 for Windows或NDK r8 for Windows安装包,下载地址:http://developer.android.com/sdk/ndk/index.html
下载后解压到你喜欢的路径,例如笔者的路径: D:\Develope\Android\android-ndk-r8。注意跟Android安装一样,目录不要有空格。
Android NDK包含build,docs,platforms,prebuilt,samples,sources,tests,toolchains,GNUmakefile,ndk-build,ndk-gdb及readme等内容.samples下面包含几个实例开发演示项目,第一次接触NDK开发,建议先从示例开始。下面先看一下编译环境配置。
二、下载Cygwin
由于NDK开发都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要模拟Linux模拟编译环境。下载地址:http://www.cygwin.com/
下载后是个setup.exe文件,使用过程如下:
第一步:运行setup程序,第一步图略,直接点击Next进入下一步。
第二步:选择安装方式,第一次可以采用Direct Connection在线下载安装,如有现成的离线包,可以选择离线安装(Install from Local Directory)。
第三步:选择安装目录,比如D:\Develope\Cygwin,注意此目录是指Cygwin最终的安装目录,不是下载文件暂存目录。
第四步:设置本地包暂存路径
暂存目录默认是放到setup.exe的同级目录下,下载后名字类似ftp%3a%2f%2fcygwin.mirrors.pair.com%2f这样格式。
第五步:设置网络连接方式
第六步:选择下载站点地址
起初尝试几个看哪个速度快就用哪个地址(如果感觉不快就点取消,再次来过)。
最好选择.cn的地址,这样下载最快。
第七步:等待加载安装项载入,选择安装项
我们编译NDK,在默认设置下,只需选择Devel(点击列表中Devel,将后面的Default改为Install,图中箭头所示),其它均为默认状态。
也可以按需选择以下几个组件安装,都在Devel节点下:
autoconf2.1
automake1.10
binutils
gcc-core
gcc-g++
gcc4-core
gcc4-g++
gdb
pcre
pcre-devel
gawk
make
第八步:等待下载完成
下载完成时间决定于你选择的安装包数量及网络连接速度,比如按照本文默认的选择方式,可能需要4-5个小时,下载后压缩包约750M,下载完成后会自动安装到上文设置的安装目录。
提醒:第一次下载完成后,最好把下载的包目录做个备份,下次安装同样的环境可以直接使用离线安装方式(第二步中选择本地安装)。
三、验证Cygwin环境
安装完成后,先运行Cygwin一次(Cygwin.bat),以便创建一些用户环境文件,分别输入:make -v和gcc -v.如果检测成功,会有make和gcc相关版本信息打印出来,如下图。
四、配置NDK路径设置
在Cygwin安装目录下你会发现有一个home目录,如果你是Administrator用户登录就会在home目录下创建一个Administrator目录.如果是其他用户则会创建其他用户目录名.
在D:\cygwin\home\Administrator目录下找到".bash_profile"文件,使用文本编辑器编辑它.
ndk=/cygdrive/d/Develope/Andriod/android-ndk-r8
export ndk
其中ndk=/cygdrive/<你的盘符>/<android ndk 目录> ,"ndk"这个名字随便起,以后经常用不要太长。
重启cygwin,输入:cd $ndk 如果如下图所示,证明环境变量设置成功了。
可进入ndk对应目录说明设置OK。
五、编译演示工程
现在就可以编译相关NDK工程了(一些用c/c++写的程序),编译方法如下:
1、在cygwin命令行下,进入android项目工作目录:
cd $ndk
2、依次进入samples\hello-jni目录,(完整路径示例: D:\Devlope\Andriod\android-ndk-r8\samples\hello-jni)
3、运行$ndk/ndk-build
注意:该命令$ndk和/ndk-build是连接到一起的,中间没有空格,实际使用时是打入完整的$ndk/ndk-build,不要只打ndk-build。
4、正常编译完成后会在你的项目libs/armeabi目录下生成对应的 .so文件。如果存在.so文件,那么恭喜你,你的ndk也运行正常了。
5、总结一下,相信多数同学也看出来了,$ndk是调用我们之前设置的环境变量,ndk-build是调用ndk的编译程序,通过环境变量的方式来减少我们每次都要输入一大串目录路径字符的麻烦,在编译程序时进入到程序目录里直接键入$ndk/ndk-build就可以编译了。至于编译的程序,我测试了一下,准备好以下目录和文件就可以编译了,如下表所示:
AndroidManifest.xml文件(随便从别的工程拷一个就可以,但是Activity要改成自己程序的)
|
Android.mk(makefile文件,这个得根据自己的程序编写了)
|
Hello-jni.c(你编写的c程序文件,如果是c++就是cpp文件)
|
六、导入静态目标库到Android项目
1. Eclipse中新建一个工程HelloJni.在Eclipse中通过"Create project from existing source"方法建立起Hello-jni项目.
2. 选择Android版本.
3. 保持默认配置.点击Finish完成.
4. 运行代码.
后续您可以试着修改库源程序或项目JAVA程序来熟悉NDK整个开发过程。
摘自:http://www.cnblogs.com/guenli/archive/2012/07/04/2576078.html又在其内容上做了一点编辑。
导入的HelloJni项目之所以能正常运行,是因为之前用cygwin工具编译出了HelloJni项目中的.so文件,即编译了jni文件夹的内容。
用cygwin命令行调用ndk-build的方式编译jni(.so文件),相对来说,比较麻烦。
后续会讲解一下如何用eclipse编译.so文件。
分享到:
相关推荐
手把手教你怎么在windows下搭建android NDK环境
NDK环境搭建 PDF c++ android
Android NDK环境搭建及遇到的问题详解,我就是看它搭建JNI开发环境的。
Android NDK 环境搭建, Cygwin+ndk+eclipse实例 java调用C 及实例代码
NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk,并集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件
该资源包含了一个androidndk的开发环境搭建,和简单的入门实例!简单易懂
详细介绍了在eclipse中android项目下c/c++代码的自动编译,和在eclipse中用ant生成ndk需要的jni头文件,加速ndk的开发,因为是原创,费了不少心力和时间,所以设了6分,有人反映太贵了,现在调成3分,这下大家满意了...
windows下NDK搭建Android开发环境,环境配置亲测可用,安装文档一步一步就能调试第一个hello_jni了
NDK全称:Native Development Kit。 1、NDK是一系列工具的集合。 * NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。 ...
ubuntu下android ndk编译环境搭建,android应用程序开发,环境编译
Eclipse下Android_NDK环境的搭建
NULL 博文链接:https://leequer.iteye.com/blog/790606
基于Android底层NDK开发OpenCV环境搭建,基于Android底层NDK开发OpenCV环境搭建
ubuntu Android NDK开发环境的搭建
本文档的主要作用:完成在eclipse中通过建立普通的android工程,通过配置环境就可以实现本地编译c、c++代码,生成.so 动态库。文档中图文并茂,生动形象。对android开发中使用c、c++代码者有益。
android NDK r7版本 环境搭建全过程, 亲测通过, 实现自动编译, 直接运行
在Android下用C/C++开发,新版本的配置不需要cygwin
目 录 1 Cygwin 1.1 Cygwin下载 1.2 Cygwin安装 2 NDK 2.1 NDK下载 2.2 Cygwin配置NDK ...4 Android项目NDK环境配置 4.1 .so文件Builder 4.2 导入include文件及编译 4.3 Native向logcat输出调试信息
2.环境部署Windows xp Android NDK环境搭建 3.Ubuntu android NDK配置与开发 4.Android1.5 NDK Release 1 中文说明文档 5.Android NDK概述 6.Android.mk文件语法详解 7.NDK doc其余四篇文章译文 8.实例分析与入门...