cocos2dx 安卓编译问题收集
问题:
新的cocos2d-x 2.2.5 在使用Eclipse的安卓NDK 9 的编译器进行编译的时候,
问题提示如下:
[armeabi] Compile++ thumb: cocos_extension_static <= LabelReader.cpp
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp: In member function 'virtual void cocos2d::extension::LabelReader::setPropsFromJsonDictionary(cocos2d::ui::Widget*, const Value&)':
D:\work\cocos2d-x-2.2.5/extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp:54:9: error: 'transform' is not a member of 'std'
解决方法:
LabelReader.cpp中导入头文件
#include <algorithm>
(1)Error: Cocos2dxActivity cannot be resolved to a type
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: *** Android NDK: Aborting. . Stop
Eclipse环境新建环境出现如下错误:
Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/android' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
jni/Android.mk:19: *** Android NDK: Aborting. . Stop.
解决办法:
在项目proj.android\jni\Android.mk(E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\GameThieves\proj.android\jni\Android.mk)文件中添加路径:
$(call import-add-path, E:\Research\cocos2d\cocos2d-2.0-x-2.0.2)\
$(call import-add-path, E:\Research\cocos2d\cocos2d-2.0-x-2.0.2\cocos2dx\platform\third_party\android\prebuilt)\
$(call import-module,CocosDenshion/android) \
$(call import-module,cocos2dx) \
$(call import-module,extensions)
(3)Error:Android Unable to resolve target 'android-8'
ADK版本 :---API Level对应关系(注意高版本不一定是兼容低版本的)
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版本。
选择好后,再项目右键,在android Tools下选择Fix Project Properties
3. 如果没有default properties, 自己建下,然后target=android-10
(4)Error:Unable to execute dex: Multiple dex files define
编译正常,在用Eclipse调试 的时候报错:Error:Unable to execute dex: Multiple dex files define
网上搜索了有5种可能的办法,挨着试了一下,下面是我解决成功的方法。
解决办法:
在eclipse中右键这个工程文件夹,在Build Path选项中对 Android Dependencies,将它移除掉就可以了。
(5)E rror:Program "bash" is not found in PATH
这个是Cygwin没配置好
解决办法:
1、把cygwin/bin加入系统环境变量Path下
2、右击工程-->properties-->C/C++ Build 确认右边视图选项Build command:ndk-build
3、右击工程-->properties-->C/C++ Build -->ToolChain Edit
确认右边视图的选项:Current toolchain:No Toolchain
Current Builder:Android Builder
(6)Error:This Android SDK requires Android Developer Toolkit version 22.6.3 or above. Current version is 22.3.0
一次升级了SDK启动Eclipse的时候就报这错误
解决办法:
找到android-sdk-windows\tools\lib下的plugin.prop文件修改其中的版本号,改为与所安装的ATD同版本号即可
cocos2dx 安卓编译问题收集的更多相关文章
- ubuntu12.04下安卓编译环境搭建总结
前言: 因为工作需要,经常要编译安卓下的动态库,公司有已经搭建好环境的服务器,但是第一自己想自己搭建一下了解一个整个过程,另外,公司的服务器也经常出现问 题,导致编译不了,所以就想自己搭建环 ...
- linux下安卓编译apk环境搭建
ubuntu下linux安卓编译环境搭建. 配置好编译环境 (前提是已经安装了jdk,可以用java -verison 命令查看) 一.设置环境变量 用vi ~/.bashrc 打开编译环境 JA ...
- 安卓编译出错: Process 'command 'C:\Java\jdk1.8.0_51\bin\java.exe'' finished with non-zero exit value 1 解决!
安卓编译出错: Process 'command 'C:\Java\jdk1.8.0_51\bin\java.exe'' finished with non-zero exit value 1 解决! ...
- linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
解决cocos2d-x中编译出现的一个小问题 对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如 ...
- Cocos2d-x 2.2.3 使用NDK配置安卓编译环境问题之 Cannot find module with tag 'CocosDenshion/android' in import path
1.当做安卓移植的时候遇到例如以下问题: Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/android ...
- [原]详解如何将cocos2dx项目编译到Android平台上的(方式一:Cywin+NDK)
链接地址:http://m.blog.csdn.net/blog/yhc13429826359/29357815 2014-6-8阅读578 评论0 前言:cocos2dx作为一个开源的移动2D游戏框 ...
- cocos2dx+lua编译Android项目
一.简单介绍 cocos2dx版本号:3.2 二.问题及解决方式 1.为项目开启Native支持,把项目转为C++项目. 1>.项目开启C++ Native支持,操作例如以下图 watermar ...
- Yomob广告在cocos2dx安卓平台的Demo
Yomob 也是一个广告平台:他的使用方式比较简单哈,这里只说说他的步骤 按照官方文档说明配置环境,我使用的是eclipse,在eclipse上自己将文件copy到项目proj.android下,覆盖 ...
- cocos2d-x安卓应用启动调用过程简析
调用org.cocos2dx.cpp.AppActivity AppActivity是位于proj.android/src下的开发者类(即开发者自定义的类),它继承自org.cocos2dx.lib. ...
随机推荐
- 结合php ob函数理解缓冲机制
对于一个刚刚入门的php程序员来说,php缓冲区是几乎透明的.在他们心目中,一个echo print_r 函数,数据便会‘嗖’的一声飞到浏览器上,显示出来.我也一直如此单纯地认为. 其实,在技术的世界 ...
- fis-receiver:一行命令将项目部署到远程服务器
前言 本项目基于FIS2,没了.其实fis项目本身就提供了php版本的范例,这里翻译成node版本. 项目地址:https://github.com/chyingp/fis-receiver 服务端接 ...
- 使用spring cloud实现分布式配置管理
<7天学会spring cloud系列>之创建配置管理服务器及实现分布式配置管理应用. 本文涉及到的项目: 开源项目:http://git.oschina.net/zhou666/spri ...
- Thinkphp 边学边用-验证码无意间犯的错
先看代码: $(".verify_img").click(function(){ var timenow = new Date().getTime(); var url =&quo ...
- [USACO2005][POJ3171]Cleaning Shifts(DP+线段树优化)
题目:http://poj.org/problem?id=3171 题意:给你n个区间[a,b],每个区间都有一个费用c,要你用最小的费用覆盖区间[M,E] 分析:经典的区间覆盖问题,百度可以搜到这个 ...
- 每天一个linux命令(29):date命令
在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便. 1.命令格式: date [参数 ...
- “耐撕”2016.04.13站立会议
1. 时间 : 19:40--20:00 共计20分钟 2. 人员 : Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客 ...
- C头文件之<stdio.h>
(stdio.h) 该头文件主要是执行输入输出操作.文件中重要的概念是“流”(streams).“流”在函数库中用FILE表示,用指针类型FILE *来操作.有三个标准流:stdin, stdout, ...
- 视频播放实时记录日志并生成XML文件
需求描述: 在JWPlayer视频播放过程中,要求实时记录视频观看者播放.暂停的时间,并记录从暂停到下一次播放时所经过的时间.将所有记录保存为XML文件,以方便数据库的后续使用. 实现过程: 尝试1: ...
- 【BZOJ 3732】 Network Kruskal重构树+倍增LCA
Kruskal重构树裸题, Sunshine互测的A题就是Kruskal重构树,我通过互测了解到了这个神奇的东西... 理解起来应该没什么难度吧,但是我的Peaks连WA,,, 省选估计要滚粗了TwT ...