@H_301_1@win7+cocos2d-x-2.1.4+vs2012环境太简单就不多说了,下面是eclipse环境
D:\Andorid\cocos2d-x-2.1.4\samples\Cpp\HelloCpp\proj.android\jni\appliction.mk打开,在最后加上
APP_CFLAGS += -Wno-error=format-security @H_301_1@
原文链接:https://www.f2er.com/cocos2dx/345678.html一、准备
@H_301_1@1.eclipse+adt+sdk:adt-bundle-windows-x86_64-20130729.zip @H_301_1@http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20130729.zip @H_301_1@2.ndk:android-ndk-r8e-windows-x86_64.zip @H_301_1@http://dl.google.com/android/ndk/android-ndk-r8e-windows-x86_64.zip @H_301_1@或android-ndk-r9-windows-x86_64.zip @H_301_1@http://dl.google.com/android/ndk/android-ndk-r9-windows-x86_64.zip @H_301_1@3.cocos2d-x-2.1.4.zip @H_301_1@https://cocos2d-x.googlecode.com/files/cocos2d-x-2.1.4.zip @H_301_1@http://cocos2d-x.googlecode.com/files/cocos2d-x-2.1.4.zip @H_301_1@4.JDK:jdk-7u25-windows-x64.exe @H_301_1@http://download.oracle.com/otn-pub/java/jdk/7u25-b17/jdk-7u25-windows-x64.exe?AuthParam=1376980954_2e476db738ca2e49a6952afec4e10cdc二、配置java环境
@H_301_1@JAVA_HOME:D:\Andorid\Java\jdk1.7.0_25(安装路径) @H_301_1@CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; @H_301_1@Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; @H_301_1@然后命令行:java -version @H_301_1@命令行:java @H_301_1@命令行:javac @H_301_1@到此java环境完成三、配置eclipse(此来自部分网络,自己配图并配置完成,以备电脑重装)
- 打开eclipse,点击window->perfernces->Android,在SDK Location中填上刚刚下的adt-bundle-windows-x86_64-20130729.zip解压后的D:\Andorid\adt-bundle-windows-x86_64-20130729\sdk(自己的解压路径)
- Android->NDK中填ndk路径 D:\Andorid\android-ndk-r9(自己的解压路径)
- 导入Cocos2dx例子工程:Eclipse中File->New->Other...选择Andriod Project from Existing Code在Import Projects的Root Directory中导入D:\Andorid\cocos2d-x-2.1.4\samples\HelloCpp\proj.android\(注意,不要选中 Copy project into workspace,否则路径编乱很难编译成功)
- 接着点击一下添加的HelloCpp项目,然后Project->Properties->Builder->New->Program
- porject->clean
- Run As->Android Application.
- 记得将D:\Andorid\cocos2d-x-2.1.4\cocos2dx\platform\android\java\src\org\cocos2dx路径下的 lib文件夹复制到D:\Andorid\cocos2d-x-2.1.4\samples\Cpp\HelloCpp\proj.android\src\org\cocos2dx下
D:\Andorid\cocos2d-x-2.1.4\samples\Cpp\HelloCpp\proj.android\jni\appliction.mk打开,在最后加上
APP_CFLAGS += -Wno-error=format-security @H_301_1@
四、一些问题的解决方案(以下来自网络)
- 本文链接:http://zengrong.net/post/1882.htm
- @H_301_1@配置成功以能运行HelloCpp/proj.android项目为准。
1. Library错误
@H_301_1@导入HelloCpp项目后,在 “项目属性-Java Build Path-source” 中加入cocos2d-x-2.1.4\cocos2dx\platform\android\java
路径。然后进入 “项目属性-Android-Library”,删除这里的“Reference Project”,否则怎么编译都会报错。cygwin环境和ndk only环境均会出现。切记切记!@L_301_12@2. NDK_MODULE_PATH 环境变量配置
@H_301_1@具体的路径可以查看cocos2d-x-2.1.4\samples\Cpp\HelloCpp\proj.android\build_native.sh
的最后几行。cygwin环境不需要设置这个变量,直接执行build_native.sh
即可。 @H_301_1@这个环境变量可以配置在Windows系统环境变量中,也可以配置在Eclipse项目的builder属性中,还可以直接配置在project/jni/Application.mk
文件中。 @H_301_1@若配置在Application.mk
文件中,可以这样写:NDK_MODULE_PATH:=cocos2d-x-2.1.4;cocos2d-x-2.1.4\cocos2dx\platform\third_party\android\prebuilt
3. Fatal signal 11 (SIGSEGV) at 0×00000000 (code=1)
@H_301_1@apk打包成功,安装执行后出现这个错误退出。这一般是由于C++编译失败造成。对于cygwin环境,再执行build_native.sh
编译一次即可成功;对于ndk only环境,也需要重新执行一次编译(如果没有配置自动刷新,那么可以手动选择Run-build project)。4. 建立自定义builder的问题
@H_301_1@死去活来和网上其他文章都提到为了不依赖cygwin,需要在 “项目属性-Builders” 中建立一个新的buildr,调用NDK提供的ndk-build.cmd
来编译。这样做有2个问题:- 没有强调 Builder 的编译顺序。默认新建的Builder是处于所有已有Builder的末尾,这可能会导致Android Package Builder等Builder依赖错误;
- 默认存在的 “CDT Builder” 依然是调用
bash build_native.sh
来编译,若没有安装cygwin,可能会出现下面的错误:
bash D:/cocos2d-x/cocos2d-x-2.1.4/samples/Cpp/HelloCpp/proj.android/build_native.sh clean
Cannot run program "bash": Launching Failed
Error: Program "bash" not found in PATH