linux编译cocos
Ⅰ 使用cocos2dx移植 android平台,怎么收集崩溃日志
很高兴能帮助您
如果你用的是windows系统作为开发环境,使用的是cocos2d-x3.2最新版的,你在一开始安装cocos2d-x的时候,会要求输入
NDK_ROOT
ANDROID_SDK_ROOT
ANT_ROOT
最新版的cocos2d-x使用了python来进行安装和编译程序的,所以你要先在你的windows系统上安装上python.安装好之后,下载最新版的cocos2d-x,然后,cd到这个目录下,你会看到一个有一个setup.py的文件,.py后缀的文件就是python的脚本文件了。是要用python来运行的。如果你安装好python之后设置好了python的环境变量,这个时候,你只要在命令行里运行:
python setup.py就可以了。
然后你就可以看到要求你输入的这三个路径了。
这三个工具的所在路径,这几个路径输入对了之后,你的cocos2d-x就安装好了,这个时候,在cmd里创建一个新项目,创建的方法是在命令行里输入:
cocos new youprojectname -p com.youcom,youprojectname -l cpp -d 你的新建项目所在路径
然后回车,你就可以看你的的项目会在你的新建项目路径下有一个youprojectname的文件夹,打开,你就可以看到里边有各个系统的project文件夹了,还有一个Class和Resources的文件夹。这个时候,你在命令行里cd到你的proj.android文件夹下,使用命令:
python bulid_native.py
就可以对你的安卓新建的helloworld项目进行编译了。不出意外,要不然一分钟就编译好了。会生成一个libcocos2dcpp.so在你的pro.android/libs/armabi的路径下。然后打开你的ADT,也就是eclipse,进入pro.android目录,导入android项目到eclipse。这个时候可能会报一个cocos2d-x的lib库错误,只要把cocos2d-x的
cocos2d/cocos/platform/android/java/src
目录下的文件夹复制到pro.android/src下就可以解决这个问题了。
然后,接上你的android手机,并且在手机中打开开发者模式。点击程序远行设置,选择使用设备运行。在弹出的一个选择手机设备的框时选择run,不一会,你的helloworld项目就可以在手机上看到了。
如果要调试,你可以在eclipse中打开logcat,看到cocos2d-x的log输出信息。
总的来说,android最好的开发环境还是mac系统。因为在mac系统下很多linux命令都可以使用。不像windows系统比较蹩脚。
你的采纳是我前进的动力,
记得好评和采纳,答题不易,互相帮助
Ⅱ cocos2dx 3.16怎么编译
先给自己科普一下, android sdk 是给java开发者用的, 咱C++开发者用的是android ndk, 所以就是使用ndk来编译cocos2dx程序了
使用命令行创建一个项目, 我这里创建的是一个lua项目:cocos new lua_proj2 -p com.company_name.program_name -l lua -d d:\xxx\xxx
此时创建了一个DEMO程序, 此时就可以使用cocos命令生成一个apk包, 进入到目录lua_proj2\frameworks\runtime-src下面, 在此目录下面执行命令cocos compile -p android 就会生成一个apk包, 把这个拖到genymotion上面, 就安装跑起来了.
上面说的是不使用eclipse的方式来生成一个apk包, 下面记录一下在eclipse中加载lua_proj2这个项目, 并生成apk包的过程. 为什么一定要将cocos2dx项目导入到eclipse中来生成apk包呢, 因为在eclipse中可以连接AVD来调试android程序, 再者, eclipse可以运行在linux环境下面, 后面我打算在linux进行开发, 所以这一步是一定要跨出去的
打开eclipse, 加载lua_proj2项目, 在此注意一下, 不需要加载libcocos2dx这个项目, 只要加载lua_proj2这个自己新建一项目即可
在eclipse中右击lua_proj2 -> Properties. 出现Properties for lua_proj2框框
创建一个新的builder
第一个红框是builder名称, 随便填写, 第二个红框框是NDK生成工具, 即, 使用此工具来编译C++项目, 第三个红框框是工作目录, 此处我使用lua_proj2项目目录作为工作目录, 切换到Environment选项卡, 新建一个在此生成器中使用的环境变量NDK_MODULE_PATH, 值是......\lua_proj2\frameworks\cocos2d-x\cocos;......\lua_proj2\frameworks\cocos2d-x;......\lua_proj2\frameworks\cocos2d-x\external, 前面的.......是绝对目录的省略, 这里要输入绝对路径名称, 在此我就不写绝对路径了.
一路OK下去, 到下面这个画面
这个就新建立的builder, Project->Build Project
出现大量的error: 'override' does not name a type错误, 这是由于NDK的版本太低了, override是C++11中才有的关键字, 而到NDKr10才支持C++11, 所以要升级NDK. 到官网去下载吧
不大, 400多M的样子, 更新完成之后, 看一下ndk\toolchains目录下面的编译器, 我的目录是下面这样子的
我很想使用clang来编译, 但是现阶段我还不会配置, 就用GCC吧, x86-4.6 & x86-4.8两个版本的GCC, 4.8的支持C++11
在Application.mk中添加一句NDK_TOOLCHAIN_VERSION = 4.8 就是指定使用GCC4.8来编译cocos2dx项目, 跑起来了, 下面是eclipse跑起来的console输出
跟命令行下执行cocos compile -p android 跑出来的是一样的, 都是在编译程序. 下面进入到在eclipse下面调试程序