Android NDK环境搭建及注意问题

Android NDK 环境搭建及配置

1、下载必须软件(默认你装了Eclipse)

  cygwin-->cygwin下载地址

   android-ndk-->ndk下载地址

2、接下来进行cygwin的安装,之前在网上帖子里也有很多,但有些问题再次纠正     

   2.1、 双击运行,运行后你将看到安装向导界面:

   2.2、 点击下一步

         此时让你选择安装方式:

         1)Install from Internet:直接从Internet上下载并立即安装(安装完成后,下载好的安装文件并不会被删除,而是仍然被保留,以便下次再安装)。

         2)Download Without Installing:只是将安装文件下载到本地,但暂时不安装。

         3)Install from Local Directory:不下载安装文件,直接从本地某个含有安装文件的目录进行安装。

   2.3、选择第一项,然后点击下一步:

   2.4、选择要安装的目录,注意,最好不要放到有中文和空格的目录里(切记不要中文路径),似乎会造成安装出问题,其它选项不用变,之后点下一步:

   2.5、上一步是选择安装cygwin的目录,这个是选择你下载的安装包所在的目录,默认是你运行setup.exe的目录,直接点下一步就可以:

   2.6、此时你共有三种连接方式选择:

        1) Direct Connection:直接连接。

        2) Use IE5 Settings:使用IE的连接参数设置进行连接。

        3) Use HTTP/FTP Proxy:使用HTTP或FTP代理服务器进行连接(需要输入服务器地址、端口号)。

用户可根据自己的网络连接的实情情况进行选择,一般正常情况下,均选择第一种,也就是直接连接方式。然后再点击“下一步”,

   2.7、 这是选择要下载的站点,我用的是163的,速度感觉还挺快,选择后点下一步

   2.8、 此时会下载加载安装包列表

   2.9、Search是可以输入你要下载的包的名称,能够快速筛选出你要下载的包。那四个单选按钮是选择下边树的样式,默认就行,不用动。View默认是Category,建议改成full显示全部包再查,省的一些包被隐藏掉。左下角那个复选框是是否隐藏过期包,默认打钩,不用管它就行,下边开始下载我们要安装的包吧,为了避免全部下载,这里列出了后面开发NDK用得着的包:有的帖子里说12个包,但问我安装的时候好多找不到,后来发现那些找不到的没有影响可以放心安装(autoconf2.1、automake1.10、binutils、gcc-core、gcc- g++、gcc4-coregcc4-g++、gdb、pcrepcre-devel、gawk、make共12个包,我安装的是没有删除线的)

   2.10、 然后开始选择安装这些包吧,点skip,把它变成数字版本格式,要确保Bin项变成叉号(这里好奇怪,选中竟是x),而Src项是源码,这个就没必要选了。

   2.11、安装完成后可以再cygwin的命令行中测一下是否安装及配置成功:

         1) cygcheck -c cygwin命令,会打印出当前cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常。

         2) gcc --version 查看gcc是否安装成功(同上,g++ --version、gdb --version),如果现实了版本信息,说明成功了。

3、 打开cygwin安装目录/home/<电脑用户名>/.bash_profile文件,添加NDK=/cygdrive/<你的盘符>/<android ndk 目录>例如:NDK=/cygdrive/d/android-ndk-r9c export NDK(这里名字可以任选),之后打开cygwin命令行窗口输入cd $NDK回车,如果上方的路径出现了你配置的/cygdrive/d/android-ndk-r9c,说明成功了。

接下来你就可以用cygwin变异jni程序了,可以找ndk自带的hello-jni做测试:

   cd cygdrive/d/android-ndk-r9c/samples/hello-jni

   $NDK/ndk-build(如果这里你添加了ndk到环境变量中去的话,直接ndk-build就可以了)

   但我的遇到了问题:

   /usr/bin/gawk.exe error loading shared libraries: ? :can't find such file or direcries

   ......

   我按照这个帖子上给出的方法(错误检测方法)发现的确是少了一个dll动态库文件,没办法只能更新cygwin,这里的更新其实就是重装,不过你之前装过的会保留,下载需要的库。我需要的是 cyggcc_s-seh-1.dll这个库,正好在库说明)这里看到它是属于哪个lib的,然后更新时再选择装上,之后可以成功编译了。

   ndk-build成功生成了.so,在Eclipse上运行,模拟器上成功显示了“Hello from JNI! Compiled with ABI x86 ”

本来不想再修改的,但是........

自己按照网络上已有的帖子实践过,经过亲测发现,配置了cygwin就不用在Eclipse上下载CDT插件了,不知道网上已有的那些帖子的作者到底自己试过没有,坑啊.................

1、选择相应工程,右键选择“properties”-->Builder





















2、配置
























refresh配置










build option配置





















OK 完成

2、接下来是在新建Builder的界面,就是第一张图,把新建的up到最上边,这样每次保存更改或者clean Eclipse都会自动帮你生成so库了。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值