Windows下Eclipse搭建Android NDK开发环境.docx
- 文档编号:1162988
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:20
- 大小:1.33MB
Windows下Eclipse搭建Android NDK开发环境.docx
《Windows下Eclipse搭建Android NDK开发环境.docx》由会员分享,可在线阅读,更多相关《Windows下Eclipse搭建Android NDK开发环境.docx(20页珍藏版)》请在冰点文库上搜索。
Windows下Eclipse搭建AndroidNDK开发环境
声明:
本资料中的所有内容均从网络收集并结合自己验证整理而成,如有问题,请及时联系。
――Windows-Eclipse
AndroidNDK开发环境搭建指南
日期:
2011-11-25
收集者:
Saratime
目录
1Cygwin的搭建4
1.1简介4
1.2Cygwin的安装4
1.3下载AndroidNDK10
1.4在Cygwin中配置NDK环境变量10
2Eclipse的配置11
2.1安装EclipseCDT组件11
2.2用NDK来编译程序12
2.3配置C/C++的编译器12
插图目录
图11CygwinSetup启动页面4
图12选择下载源5
图13选择安装目录6
图14选择存放下载文件的位置6
图15选择网络连接方式7
图16选择下载站点8
图17选择包8
图18安装进度页面9
图21EclipseCDT安装页面11
图22Config页面13
图23新建编译器13
图24配置编译器Main14
图25配置Refresh15
图26配置Refresh—设定目录15
图27配置BuildOptions选项—设定目录16
图28配置BuildOptions选项—设定目录16
1Cygwin的搭建
由于NDK编译代码时必须要用到make和gcc,所以必须先搭建一个linux环境,然后再在Eclipse中配置自动编译环境。
1.1简介
cygwin是一个在windows平台上运行的unix模拟环境,它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,非常有用。
通过它,就可以在不安装linux的情况下使用NDK来编译C、C++代码了。
下面我们按照下面的步骤,一步一步的安装cygwin吧。
1.2Cygwin的安装
步骤1首先要下载cygwin的安装程序setup.exe,下载地址为:
或者,也可以从其它任何可以下载到该安装程序的网址均可。
步骤2下载完成后双击运行setup.exe,可以看到向导界面如下:
图11CygwinSetup启动页面
步骤3点击下一步,此时让你选择安装方式,选择第一项,点击下一步:
图12选择下载源
⏹InstallfromInternet:
直接从Internet上下载并立即安装(安装完成后,下载好的安装文件并不会被删除,而是仍然被保留,以便下次再安装)。
⏹DownloadWithoutInstalling:
只是将安装文件下载到本地,但暂时不安装。
⏹InstallfromLocalDirectory:
不下载安装文件,直接从本地某个含有安装文件的目录进行安装。
步骤4选择要安装的目录,注意,最好不要放到有中文和空格的目录里,似乎会造成安装出问题,其它选项不用变,之后点下一步:
图13选择安装目录
步骤5上一步是选择安装cygwin的目录,这个是选择你下载的安装包所在的目录,默认的是你运行setup.exe的目录(就是你下载的可执行文件setup.exe所在的目录),我放在了F:
\download目录下,然后点击“下一步”。
图14选择存放下载文件的位置
步骤6下面是选择网络连接方式页面:
图15选择网络连接方式
此时你共有三种连接方式选择:
⏹DirectConnection:
直接连接。
⏹UseIE5Settings:
使用IE的连接参数设置进行连接。
⏹UseHTTP/FTPProxy:
使用HTTP或FTP代理服务器进行连接(需要输入服务器地址、端口号)。
用户可以根据自己的网络连接的实情情况进行选择,一般正常情况下,均选择第一种,也就是直接连接方式,然后点击下一步。
步骤7选择下载站点
我用的是(也可以自己添加站点,在UserURL中输入你选择的站点,然后点击Add添加,在列表中选中添加的站点,网上有人说http:
//ftp.ntu.edu.tw这个速度会快点,但我没有连上,就随便选了上面那个)然后点击下一步:
图16选择下载站点
步骤8此时会出现一个要下载安装的组件包列表:
图17选择包
步骤9点击下一步,进入安装过程:
图18安装进度页面
步骤10安装完成后点击完成结束安装。
步骤11下面测试一下cygwin是不是已经安装好了:
运行cygwin,在弹出的命令行窗口输入:
cygcheck-ccygwin命令,会打印出当前cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常。
然后依次输入gcc–version,g++--version,make–version,gdb–version进行测试,如果都打印出版本信息和一些描述信息,非常高兴的告诉你,你的cygwin安装完成了!
1.3下载AndroidNDK
下载站点如下:
http:
//A
http:
//developer.A
如果上面的站点下载不了,也可以到网上找一些下载站点,下载r4版本的Android_ndk,下载后直接解压即可。
可以考虑和androidSDK放在相同的目录下,对以后的开发可能会带来一些便利。
注意:
上面这段是从网上摘抄的,但通过我自己的经历,在下载Cygwin的时候,会自动下载配套的AndroidNDK,保存在Cywin指定的下载目录中(就是上一节中第五步中设定的路径)。
所以,为了后面的顺利进行,建议在安装完Cywin后,现在上面路径中确认下是否已经下载了NDK,如果没有,再利用上面的链接手动下载。
1.4在Cygwin中配置NDK环境变量
这一步设定的环境变量可以使后面的操作变得简单,建议进行,当然,也可以直接跳过。
步骤1首先找到cygwin的安装目录,找到一个home/<你的用户名>/.bash_profile文件,我的是C:
/cygwin/home/Administrator/.bash_profile。
如果找不到,那就到网上去找解决办法吧,这种情况确实可能发生。
步骤2打开bash_profile文件。
注意!
!
!
⏹不用使用记事本打开文件,最好使用UltraEdit打开。
⏹打开时,不要转换格式,不然可能会引起找不到文件的错误(nosuchfileordirectory)。
步骤3配置环境变量
在文件中,添加如下内容(根据你的ndk的安装目录,我的是D盘Android-ndk-r5,另外,在下载Cygwin的时候,会自动下载Android-ndk-r5,这个文件在Cygwin的前面设定的下载目录中可以找到,直接解压即可):
NDK=/cygdrive/d/android-ndk-r5
exportNDK
步骤4NDK这个名字是随便取的,为了方面以后使用方便,选个简短的名字,然后保存。
打开cygwin,输入cd$NDK,如果输出上面配置的/cygdrive/d/android-ndk-r5信息,则表明环境变量设置成功了。
2Eclipse的配置
Cygwin搭建完毕后,需要配置Eclipse,使Eclipse可以自动编译C/C++代码。
2.1安装EclipseCDT组件
AndroidSDK和ADT就不介绍了,下面介绍一个新的组件——CDT。
CDT是eclipse开发C/C++的组件包,这里声明一下,使用NDK开发android是不需要CDT的。
如果你安装了CDT,会在以后review别人的C++code时带来一些方便。
关于CDT的安装,有在线安装与下载安装两种:
可以到CSDN上下载CDT的压缩包,加压后把对应的目录下的文件拷贝到eclipse的对应目录下就可以了。
我选择的是在线安装,下面是主要步骤:
步骤1首先登录http:
//www.eclipse.org/cdt/downloads.php,找到对应你Eclipse版本的CDT插件的在线安装地址。
步骤2启动Eclipse
步骤3点Help菜单,找到InstallNewSoftware菜单
步骤4点击Add按钮,把取的地址填进去,出来插件列表后,选SelectAll,然后选择下一步即可完成安装
图21EclipseCDT安装页面
步骤5安装完成后,在eclispe中右击新建一个项目,如果出现了C/C++项目,则表明你的CDT插件安装成功啦!
2.2用NDK来编译程序
现在我们用安装好的NDK来编译一个简单的程序吧:
步骤1我们选择NDK自带的例子hello-jni,我的位于D:
/Android-ndk-r5/samples/hello-jni
具体路径,根据自己NDK存放位置而定。
步骤2启动运行Cygwin,输入如下命令,进入到D:
/android-ndk-r5/samples/hello-jni目录:
cd/cygdrive/d/android-ndk-r4/samples/hello-jni
步骤3输入如下指令编译:
$NDK/ndk-build
注意!
!
!
前面的符号“$”是需要输入的,不是Cygwin的提示符号!
!
!
它代表的是前面在Cygwin中设定的环境变量。
步骤4执行成功后,它会自动生成一个libs目录,把编译生成的.so文件放在里面。
$NDK是调用我们之前配置好的环境变量,ndk-build是调用ndk的编译程序,此时去hello-jni的libs目录下看有没有生成的.so文件,如果有,你的ndk就运行正常啦!
2.3配置C/C++的编译器
在Eclipse中配置参数,使Eclipse能自动编译源码生成.so文件
步骤1导入hello-jni工程
步骤2这时你的工程可能会报错,没关系,工程右键选择Buildpath->configBuildpath,如下图:
图22Config页面
步骤3然后选择builders->new,如下图:
图23新建编译器
步骤4选择“Program”,然后点击“OK”,如下图:
⏹出现了添加界面,首先给编译配置起个名字,如:
C_Builder或者是默认的New_Builder。
⏹在Main页面中配置如下信息:
✧设置Location为<你cygwin安装路径>/bin/bash.exe程序,例如:
C:
/cygwin/bin/bash.exe;
✧设置WorkingDirectory为<你cygwin安装路径>/bin目录,例如:
C:
/cygwin/bin
✧设置Arguments为:
--login-c"cd/cygdrive/d/Android-ndk-r5/samples/hello-jni&&$NDK/ndk-build"
✧上面的配置中各个参数的意思如下:
1)/cygdrive/e/Android-ndk-r5/samples/hello-jni:
是当前要编译的程序的目录
2)$NDK是之前配置的NDK的环境变量
这两个根据你具体的安装目录进行配置,其他的不用变,Arguments这串参数实际是给bash.exe命令行程序传参数,进入要编译的程序目录,然后运行ndk-build编译程序。
图24配置编译器Main
步骤5配置Refresh选项:
⏹勾选Refreshresourcesuponcompletion
⏹选择Specificresource
⏹勾选Recursivelyincludesub-foldersarechecked
⏹点击SpecifyResources,选择配置工程下的libs目录,请参照。
图25配置Refresh
图26配置Refresh—设定目录
步骤6配置BuildOptions选项,如下图:
勾选上最后三项,之后点击SpecifyResources按钮,选择资源目录,然后勾选你的项目目录下的jni目录即可。
图27配置BuildOptions选项—设定目录
图28配置BuildOptions选项—设定目录
步骤7最后点击Finish,点击OK一路把刚才的配置都保存下来。
注意!
!
!
如果你配置的编译器在其它编译器下边,记得一定要点Up按钮,把它排到第一位,否则C代码的编译晚于Java代码的编译,会造成你的C代码要编译两次才能看到最新的修改,如下图,一定要保证C_Builder在第一位:
步骤8验证。
⏹现在来测试一下是否可以自动编译:
⏹打开项目jni目录里的hello-jni.c文件把提示HellofromJNI!
改成其他的文字:
如:
"Hello,thisismyfirstJNI."
⏹然后再模拟器中运行你的程序。
⏹如果模拟器中显示了你最新修改的文字,那么你已经全部配置成功啦!
那么Congratulations!
你已经全部配置成功啦!
2.4F&Q
在搭建环境时遇到几个小问题,记录一下解决方法~
2.4.1Cygin配置完毕后,手动编译NDK的SampleHelloJni时,提示文件/路径不存在
在2.2节中,在步骤3中输入指令编译时,总是提示找不到文件或路径,最后发现把指令“$NDK/ndk-build”前的“$”给落了,汗!
!
“$NDK”代表的是在Cygwin设定的环境变量,前面的“$”不能少,希望你没有像我这么傻,呵呵。
2.4.2配置Eclipse环境后,编译程序提示找不到文件cutils/log.h
开始时,是按照网上的步骤,手动从网上下载android-ndk-r4的zip包解压,配置使用。
结果,在配置完后,编译程序时总是提示找不到文件cutils/log.h,网上搜索了半天,无果。
之后,意外地在Cygwin下载路径下发现了android-ndk-r5b的压缩包,我确定不是自己手动下的,应该是在下载Cygwin时自动下的,就重新用r5配置了下,结果一切OK,悲摧~浪费了半天时间!
!
2.4.3配置Eclipse环境后,编译程序时不停地编译程序
按照网上完备方案配置完毕后,解决了找不到cutils/log.h文件的问题后,沾沾自喜地认为一切OK了,结果又出了一个诡异的问题,Eclipse在不停地编译,从log看,不停地编译,编完了再删掉,再编、再编……不停了。
又像热锅上的蚂蚁一样在一阵baidu、google之后,偶然发现在配置Elipse的configBuildpath中的Refresh、BuildOptions选项的时候没有指定libs、jni目录,试了改了下,终于OK了。
至于详细原因我也清楚,记下,希望来者参考。
2.5总结
借鉴朋友之前的一句话:
在网上可以找到所有问题的答案。
这次真是体会了。
感谢所有网友的慷慨分享,谢谢^_^~~~
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Windows下Eclipse搭建Android NDK开发环境 Windows Eclipse 搭建 Android NDK 开发 环境
文档标签
- android开发环境搭建
- java环境搭建eclipse
- Android开发环境搭建
- 搭建Windows基于Eclipse
- Android手机开发环境
- Android开发环境安装
- Windows环境VC60
- Eclipse搭建Python开发
- Windows测试环境搭建
- hadoop搭建eclipse开发
- 安装android开发环境
- Windows开发Android环境
- Eclipse开发iPhoneWeb
- TIDSP开发环境
- Android40开发环境构建
- Andriod开发环境搭建开发环境
- MyEclipseEclipse开发环境
- SCOM环境搭建
- appiumforwindows环境搭建
- windowsserverphp环境搭建
- CentOS65搭建LAMP环境