利用Cgywin编译工具来将cocos2dx 在Android运行所需要的C++文件编译
1. ./build_native.sh(最后一把执行出错)
please define NDK_ROOT in cocos2d-2.0-x-2.0.2
配置环境变量:key: NDK_ROOK
values: 你配置的NDK环境目录,Linux和Windows下目录各按系统不同而不同
2. make: *** [obj/local/armeabi/objs/cocos2dx_static/platform/android/CCCommon.o] Error 1
我装的是ndk-9r,就报这错误了.然后查阅一番之后说什么应该用ndk-r8e.....
3. Cocos2d-x学习笔记(3:WIN7下将VS2010中win32 cocos2d-x 2.0.2和2.1工程移植到android环境)
挺权威的。
环境&软件&工具包:
windows xp
cocos2dx 2.1.4
cygwin-x86.exe windows下模拟编译环境
4. 配置这cocos2dx-android真是费神啊。下面简要说明以下步骤:
按照高中学数学的方法,推导法来解决这一配置“难题”。
1. 既然需要在Android平台下运行cocos的工程,那么就需要一个Android工程吧,另外需要调用cocos引擎API和C++编译库来实现吧。
2. Anroid工程需要创建,那要不要自己手动去创建一个呢, 官网已经给出了操作步骤。 那C++编译库怎么生成呢,google一下cocos在windows的配置环境就知晓了,在win下需要一个模拟编译环境,这个就需要cgywin软件,这软件很小但是里面绑定下载的工具很多,如果你全点了INSTALL,那么恭喜你。 花两顿饭的时间估计都不够,整整有4.6个G!!!这里我们在select输入栏中 敲上make。随后将出来的结果全点成INSTALL就成(别点上面的父类 all 那就和你全部安装没啥区别了,点选安装好像要点两次, 有default、intall、reintall、unstall四个状态)。
在这里说这么多就是因为我没装make打包的相关工具,在proj.android/bulid_native.sh 编译C++代码时,最后一步无法将编译后的C 去make打包成libxxx.so库
如果你发现还是编译不成功,认真查看错误原因,可能你会看到load global ndk environment fail 加载全局的ndk环境失败,原因就在于你有没有配置ndk环境变量。
3. 如何创建一个Anroid工程呢? 在cocos解压下的文件夹下,有个create-android-project.bat ,这里他点击之后,主要执行:先载入你配置的NDK、SDK、cygwin环境路径,然后依次按步骤并提示你:指定工程包名 -> 工程名 -> 选择工程Android API的版本 over
那么你要做的就是打开上面bat文件,找到
:: modify it to work under your environment
set _CYGBIN=Q:\cgywin\bin
if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4
:: modify it to work under your environment
set _ANDROIDTOOLS=Q:\android-sdks\tools
if not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5
:: modify it to work under your environment
set _NDKROOT=Q:\android-ndks\android-ndk-r8e
if not exist "%_NDKROOT%" echo Couldn't find ndk at "%_NDKROOT%" & pause & exit 6
万事俱备,那就可以顺着思路(先配置好环境然后再执行命令)。 如果还是出现了错误:
比如到最后了,Hello World就是看不到cocos可爱的画面,并且还报出
08-15 17:34:24.919: E/AndroidRuntime(17557): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load game: findLibrary returned null
呵呵,就是这错误 让重复很多次配置环境的路!!! 去cocos官网论坛上,就是说 无法加载这库是因为你的NDK 环境变量没有配置。
但是我检查了我的确实是有,不然在bulid_native.sh这一步就会抱错的。
最后还是参照官网的配置步骤:先create project 然后使用bulid_native.sh命令将C++库打包
<application android:label="@string/app_name" android:icon="@drawable/icon"> and change it by the correct icon name: <application android:label="@string/app_name" android:icon="@drawable/ic_launcher"> And, before you close AndroidManifest.xml, modify android:minSdkVersion to be: <uses-sdk android:minSdkVersion="14"/> and Save the file.
点击这里:cocos2dx官网