起初,用纯eclipse 配置android ndk开发环境,浪费了我好多时间。 倒腾了一个星期。 后来才发现有个非常简洁的途径, 我在上面成功实现了C++ ,Ogre移植到手机上,现给大家做参考。
第一步: 安装jdk。
第二步: 去 http://developer.android.com/sdk/index.html,下载eclipse + android 集成开发环境
adt-bundle-linux-x86-20140321.zip。
第三步: 解压zip包, 运行eclipse, 默认sdk, adt, cdt 插件都有, 看实际情况sdk可以不用更新,直接用包里的也行。
第三步: 下载ndk: http://developer.android.com/tools/sdk/ndk/index.html, android-ndk-r9d-linux-x86.tar.bz2, 解压, 在eclipse 指定ndk路径。
至此: android ndk 开发环境就配置完了。 下面说说怎样用这个环境开发android程序。 由于我是要把ogre 程序移植到 手机上, 所以用了ogre sdk 里面的一个例子做实践。
其他人可以用ndk -> sample 里自带的例子。
第一步: 打开Eclipse。
第二步: file -> new -> other -> android project from existing code , next。
第三步: root directory 中选择你的 ndk 工程(就是带有jni的目录,详细见ndk 中的例子), 我这里选择ogre sdk 中的ndk 例子: /home/administrator/dev/AndroidOgreSdk/Samples/GLES2;然后, finish 完成项目创建;
第四步: 现在的项目是java类型的, 要想调试得把项目转换成c++的。具体方法是: 项目右键->new -> other-> convert to c/c++..., 点 next。
第五步: 关键,要在 project type 中选择 makefile project. , toolchains 中选择 linux gcc; 点 finish。
第六步: 关键, 项目右键->properties-> c/c++ build -> build command 改成 ndk路径 +/ndk-build, 我的是 /home/administrator/dev/AndroidNdk/ndk-build;
第七步: 编译工程,此时如果 项目下的 AndroidManifest.xml 是从widnows上拷贝过来的,可能回报 Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 的错误, 应为windows 和 linux 字符编码不一样。解决办法 有两种:
(7.1) :用命令转成linux字符, cat AndroidManifest.xml | col -b > AndroidManifest.xml2 , mv AndroidManifest.xml2 AndroidManifest.xml。
(7.2): 简单方法, 在eclipse环境中打开 AndroidManifest.xml 剪切内容,粘贴,保存。
第八步: 编译工程, 此时可能会抱 ***.o.d:1: *** multiple target patterns. Stop, 这是由于 o.d.1文件是旧的, 干掉就行, 在obj 目录下。
第九步: 如果顺利,就可以编译成.so了, 点eclipse 绿色运行三角块, 生成apk, 启动android模拟器,就可以看到我的运行结果了。
ubuntu 12.04 上面Android ndk 开发环境一键配置(cdt, adt, ndk 及Ogre工程移植),布布扣,bubuko.com
ubuntu 12.04 上面Android ndk 开发环境一键配置(cdt, adt, ndk 及Ogre工程移植)