cocos2dx 安卓编译问题收集
2015-03-05 16:23
218 查看
问题:
新的cocos2d-x2.2.5在使用Eclipse的安卓NDK9的编译器进行编译的时候,
问题提示如下:
[armeabi]Compile++thumb:cocos_extension_static<=LabelReader.cpp
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp:Inmemberfunction'virtualvoidcocos2d::extension::LabelReader::setPropsFromJsonDictionary(cocos2d::ui::Widget*,constValue&)':
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp:54:9:error:'transform'isnotamemberof'std'
解决方法:
LabelReader.cpp中导入头文件
#include<algorithm>
(1)Error:Cocos2dxActivitycannotberesolvedtoatype
build_native.sh运行成功后,将项目导入到eclipse中后会出现这个问题,提示找不到下列文件:
?
解决方案:
1.只需要将cocos2d-x引擎的根目录的cocos2dx/platform/android/java/src文件夹下文件夹全部复制到项目的src包下即可。
2.也可以导入cocos2dx/platform/android/java这个工程生成一个jar文件添加到项目的libs文件夹下即可。
这两种方法都会在最终生成apk时将依赖复制到其中的。
(2)Error:jni/Android.mk:19:***AndroidNDK:Aborting..Stop
Eclipse环境新建环境出现如下错误:
AndroidNDK:jni/Android.mk:Cannotfindmodulewithtag'CocosDenshion/android'inimportpath
AndroidNDK:AreyousureyourNDK_MODULE_PATHvariableisproperlydefined?
AndroidNDK:Thefollowingdirectoriesweresearched:
AndroidNDK:
jni/Android.mk:19:***AndroidNDK:Aborting..Stop.
解决办法:
在项目proj.android\jni\Android.mk(E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\GameThieves\proj.android\jni\Android.mk)文件中添加路径:
$(callimport-add-path,E:\Research\cocos2d\cocos2d-2.0-x-2.0.2)\
$(callimport-add-path,E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\cocos2dx\platform\third_party\android\prebuilt)\
$(callimport-module,CocosDenshion/android)\
$(callimport-module,cocos2dx)\
$(callimport-module,extensions)
(3)Error:AndroidUnabletoresolvetarget'android-8'
今天导入一个Android的例子程序,出现了Unabletoresolvetarget'android-8'的错误。刚开始以为是没导入包或者是phoneGap没配置好。可是折腾了好久还是报错。最后google之后才发现原来是ADK版本不同。
ADK版本:---APILevel对应关系(注意高版本不一定是兼容低版本的)
android2.3.4---10
android2.3.1---9===Gingerbread
android2.2---8===Froyo
android2.1---7===Eclair
android2.0.1---6===Eclair
android2.0---5===Eclair
android1.6---4===Donut
android1.5---3===Cupcak
android1.1---2
android1.0---1
解决办法:
1、修改project.properties里的target=android-8(若是android2.2开发的情况下)
2.项目右键打开项目属性,在左侧选择Android,在右侧选择具体的android版本。
选择好后,再项目右键,在androidTools下选择FixProjectProperties
3.如果没有defaultproperties,自己建下,然后target=android-10
(4)Error:Unabletoexecutedex:Multipledexfilesdefine
编译正常,在用Eclipse调试的时候报错:Error:Unabletoexecutedex:Multipledexfilesdefine
网上搜索了有5种可能的办法,挨着试了一下,下面是我解决成功的方法。
解决办法:
在eclipse中右键这个工程文件夹,在BuildPath选项中对AndroidDependencies,将它移除掉就可以了。
(5)Error:Program"bash"isnotfoundinPATH
这个是Cygwin没配置好
解决办法:
1、把cygwin/bin加入系统环境变量Path下
2、右击工程-->properties-->C/C++Build确认右边视图选项Buildcommand:ndk-build
3、右击工程-->properties-->C/C++Build-->ToolChainEdit
确认右边视图的选项:Currenttoolchain:NoToolchain
CurrentBuilder:AndroidBuilder
(6)Error:ThisAndroidSDKrequiresAndroidDeveloperToolkitversion22.6.3orabove.Currentversionis22.3.0
一次升级了SDK启动Eclipse的时候就报这错误
解决办法:
找到android-sdk-windows\tools\lib下的plugin.prop文件修改其中的版本号,改为与所安装的ATD同版本号即可
新的cocos2d-x2.2.5在使用Eclipse的安卓NDK9的编译器进行编译的时候,
问题提示如下:
[armeabi]Compile++thumb:cocos_extension_static<=LabelReader.cpp
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp:Inmemberfunction'virtualvoidcocos2d::extension::LabelReader::setPropsFromJsonDictionary(cocos2d::ui::Widget*,constValue&)':
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp:54:9:error:'transform'isnotamemberof'std'
解决方法:
LabelReader.cpp中导入头文件
#include<algorithm>
(1)Error:Cocos2dxActivitycannotberesolvedtoatype
build_native.sh运行成功后,将项目导入到eclipse中后会出现这个问题,提示找不到下列文件:
import org.cocos2dx.lib.Cocos2dxActivity; |
1.只需要将cocos2d-x引擎的根目录的cocos2dx/platform/android/java/src文件夹下文件夹全部复制到项目的src包下即可。
2.也可以导入cocos2dx/platform/android/java这个工程生成一个jar文件添加到项目的libs文件夹下即可。
这两种方法都会在最终生成apk时将依赖复制到其中的。
(2)Error:jni/Android.mk:19:***AndroidNDK:Aborting..Stop
Eclipse环境新建环境出现如下错误:
AndroidNDK:jni/Android.mk:Cannotfindmodulewithtag'CocosDenshion/android'inimportpath
AndroidNDK:AreyousureyourNDK_MODULE_PATHvariableisproperlydefined?
AndroidNDK:Thefollowingdirectoriesweresearched:
AndroidNDK:
jni/Android.mk:19:***AndroidNDK:Aborting..Stop.
解决办法:
在项目proj.android\jni\Android.mk(E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\GameThieves\proj.android\jni\Android.mk)文件中添加路径:
$(callimport-add-path,E:\Research\cocos2d\cocos2d-2.0-x-2.0.2)\
$(callimport-add-path,E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\cocos2dx\platform\third_party\android\prebuilt)\
$(callimport-module,CocosDenshion/android)\
$(callimport-module,cocos2dx)\
$(callimport-module,extensions)
(3)Error:AndroidUnabletoresolvetarget'android-8'
今天导入一个Android的例子程序,出现了Unabletoresolvetarget'android-8'的错误。刚开始以为是没导入包或者是phoneGap没配置好。可是折腾了好久还是报错。最后google之后才发现原来是ADK版本不同。
ADK版本:---APILevel对应关系(注意高版本不一定是兼容低版本的)
android2.3.4---10
android2.3.1---9===Gingerbread
android2.2---8===Froyo
android2.1---7===Eclair
android2.0.1---6===Eclair
android2.0---5===Eclair
android1.6---4===Donut
android1.5---3===Cupcak
android1.1---2
android1.0---1
解决办法:
1、修改project.properties里的target=android-8(若是android2.2开发的情况下)
2.项目右键打开项目属性,在左侧选择Android,在右侧选择具体的android版本。
选择好后,再项目右键,在androidTools下选择FixProjectProperties
3.如果没有defaultproperties,自己建下,然后target=android-10
(4)Error:Unabletoexecutedex:Multipledexfilesdefine
编译正常,在用Eclipse调试的时候报错:Error:Unabletoexecutedex:Multipledexfilesdefine
网上搜索了有5种可能的办法,挨着试了一下,下面是我解决成功的方法。
解决办法:
在eclipse中右键这个工程文件夹,在BuildPath选项中对AndroidDependencies,将它移除掉就可以了。
(5)Error:Program"bash"isnotfoundinPATH
这个是Cygwin没配置好
解决办法:
1、把cygwin/bin加入系统环境变量Path下
2、右击工程-->properties-->C/C++Build确认右边视图选项Buildcommand:ndk-build
3、右击工程-->properties-->C/C++Build-->ToolChainEdit
确认右边视图的选项:Currenttoolchain:NoToolchain
CurrentBuilder:AndroidBuilder
(6)Error:ThisAndroidSDKrequiresAndroidDeveloperToolkitversion22.6.3orabove.Currentversionis22.3.0
一次升级了SDK启动Eclipse的时候就报这错误
解决办法:
找到android-sdk-windows\tools\lib下的plugin.prop文件修改其中的版本号,改为与所安装的ATD同版本号即可
相关文章推荐
- 关于cocos2dx在安卓编译时.so文件被删除问题
- cocos2dx3.0-编译安卓的一些问题
- 安卓反编译问题
- cocos2d-x2.2-3.0 编译安卓版本遇到问题
- VC+ FFMPEG 编译问题 收集
- [问题记录]cocos2dx编译打包apk过程&问题记录
- 解决源码编译android 4.0.4和SDK 后无法更新安卓平台的更新问题
- cocos2dx 编译时间长问题
- 【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题
- Cocos2dx交叉编译后在eclipse编译不通过的问题解决
- cocos2dx 跨平台编译遇到的几个问题
- 夺命雷公狗收集整理PHP在linux编译可能发生的问题
- <转>cocos2dx3.0rc创建及编译到安卓详细步骤
- 【Cocos2dx网络通信(Http&Socket)编译到Android总结】编译加入curl关联lib与头文件等问题
- 【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题
- 【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题 .
- cocos2d-x3.0 编译android出现的问题笔记 cocos2dx3.0 Android.mk No rule to make target
- 解决Cocos2dx新建项目编译时间过长等问题
- cocos2d-x jsb + cocosbuilder 编译到安卓下问题处理(待续)
- cocos2dx 安卓编译报 An internal error occurred during: "C/C++ Indexer". java.lang.NullPointerException