win7+cocos2d-x2.1.3+NDK9r+cygwin+adt-bundle-windows-x86-20130729由VS2010WIN32移植到android
来源:互联网 发布:tengine php 安装配置 编辑:程序博客网 时间:2024/05/02 04:30
先吐槽一下,MB自己总以为当设计到一些高级NB算法的时候,就是纠结的时候,没想到一个项目移植花了老子将近一天的时间,才搞定,很久没记录心得了,今天就破例写写那些扯蛋的移植是碰到的问题。
环境就不说了,见标题,网上也大多是12年是的版本,各种不同,各种试用,MB就是各种不通过,终于老子磨来磨去,才最终生搞定了一个HelloWorld的移植。废话不多说,问题记录与解决。
1、当用create-android-project.bat来生成项目的时候,他会生成三个文件夹,proj.android、Classes、Recources;MB,注意这里有坑(不晓得网上的一些以前版本都不提到,害老子搞了这么久),因为是在cocos2d-x下建立的工程,会涉及到一个权限问题(这个后面还会出现),如果不更改这个.bat文件的内容,则由于权限不够导致你建立的proj.android工程不完整(如jni、bin、gen文件夹没有),那你在怎么去苦逼的看网上后面的移植操作都是白费,所以先要解决proj.android工程完整新的问题:
(1)修改create-android-project.bat里的内容:在文件开头加上cd /d %~dp0(直接转换到当前路径),并同时要以管理员的身份来运行此bat文件,这样得到proj.android文件夹的内容才完整。
2、在cygwin下执行./build_native.sh编译proj.android时候,问题多多,主要有两类:
(1)没有权限访问工程项目下的文件或文件夹,对于文件夹总是要点“继续”才能访问,这里有个办法,批处理grantRight.reg以取得所有权限来运行工程文件夹,则工程下的子文件就都有了访问权限,但是里面的文件还要设置
(2)对于文件,很简单,嫌麻烦的话直接替换掉Classes和Resources下的文件(对应Win32下的Classes和Resoures),对于proj.android下的文件,你找的到win32下的proj.android里对应的文件替换自然后,找不到的话就老老实实的用修改文件权限吧(工作量其实也不大,在./built_native.sh编译下,看哪些文件被permision denied就恢复权限就行了)。
(3)因为只是移植的helloWorld项目,所谓的Android.mk毛都不用动一个(除了其权限要修改),就OK;但如果你要移植自己写的项目的话,其.c/.cpp路径还是要修改的。
(4)在编译的过程中也许会碰到error: format not a string literal and no format arguments [-Werror=format-s]的错误,一般都是打印字符输出的错误,如_adnroid_log_print(ANDORID_LOG, "cocos2d-x debug info", buf)要改为_adnroid_log_print(ANDORID_LOG, "cocos2d-x debug info", “%s”, buf)。
3、经过了这几部基本上就可以正常编译出so文件了,直接导入到Eclipse中,选择相应的虚拟模拟器,提示编译成功后就可以生成apk文件了,以内Eclipse对OpenGL ES2.0的不支持,在模拟器上看不到效果,如果编译成功那就拿着apk去真机上去体验吧。
NND,就这几点都把老子苦逼了快一天,也许有些哥们也正在苦逼中,不过苦逼不要紧,关键是不能老是苦逼,希望这片文章能给大家帮助。
干!
参考地址:http://www.cnblogs.com/lhming/archive/2012/06/27/2566467.html
- win7+cocos2d-x2.1.3+NDK9r+cygwin+adt-bundle-windows-x86-20130729由VS2010WIN32移植到android
- 基于adt-bundle-windows-x86的android开发环境搭建
- 基于adt-bundle-windows-x86的android开发环境搭建
- 基于adt-bundle-windows-x86的android开发环境搭建
- 最新Android环境安装--基于adt-bundle-windows-x86-20140321
- 基于adt-bundle-windows-x86的android开发环境
- 关于adt-bundle-windows-x86的Android环境的搭建
- adt-bundle-windows-x86-20130514安装问题
- adt-bundle-windows-x86 出现的问题
- 安装adt-bundle-windows-x86-20130219
- eclipse编译cocos2d-x2.2.x移植到Android
- cocos2d-x入门(7)-win7下把win32游戏移植到Android平台(无需cygwin和minigw)
- cocos2d-x入门(7)-win7下把win32游戏移植到Android平台(无需cygwin和minigw)
- 【Android-码农】最新基于adt-bundle-windows-x86的android开发环境搭建
- (windows) Android ffmpeg 移植 cygwin+ndk-r8e+win7
- 最新基于adt-bundle-windows-x86的android开发环境搭建
- 最新基于adt-bundle-windows-x86的android开发环境搭建
- 最新基于adt-bundle-windows-x86的android开发环境搭建
- 让你的机子具有简单的DNS功能
- 快速排序的几种实现方法
- 润乾报表设计器操作说明
- 浙江大学PAT上机题解析之1006. 换个格式输出整数 (15)
- Java中的UUID生成全球唯一的ID
- win7+cocos2d-x2.1.3+NDK9r+cygwin+adt-bundle-windows-x86-20130729由VS2010WIN32移植到android
- java软件工程师面试常遇到的问题
- 链表逆序
- fzu 2109(数位dp)
- 移植u-boot-2011.03到S3C2440(utu2440)的方法与步骤###5.使用JLINK间接烧写u-boot至FLASH的方法与步骤
- 王子选妃问题分析
- css专题【入门】【扩展】【技巧】
- (转载)Unable to execute dex: Multiple dex files define Landroid错误解决
- ubuntu 安装Rhytmbox多媒体插件时出现错误