环境: ubuntu 12.04 上面Android ndk 开发环境一键配置(cdt, adt, ndk 及Ogre工程移植)

起初,用纯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模拟器,就可以看到我的运行结果了。 




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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值