Mac系统cocos2dx + android 开发环境配置
Mac系统cocos2dx + android 开发环境配置
/******************************************************
这遍文章主要转载自:http://www.cnblogs.com/wt616/p/3758828.html(这位大哥真的很牛,谢谢!)
然后,文章中又加入了一些自己的理解以及在实际操作过程中遇到问题的解决办法。而这些办法也是来自于伟大
的网友,但由于搜索的比较多,很多出处地址都没有记录好,抱歉,若你们看到,告诉我,我再加上地址。
******************************************************/
环境搭建步骤
1. 所需软件及下载地址
(1) Mac系统,我的版本:OSX Yosemite10.10
(2) cocos2dx,我的版本:cocos2d-x-2.2.3
下载地址:http://www.cocos2d-x.org/download
(3) Eclipse for Mac , Android SDK(ADT)
这两个使用最新的版本即可,而谷歌已经把这两个打包在一起了,很大程度上减少了Eclipse+Android开发环境搭建的工作,简称为the Eclipse ADT bundle,包括了开发需要的软件或SDK;建议不单独下载,直接下载ADT,下载地址:http://developer.android.com/sdk/index.html,记得选择Mac版本,32位或64位。
我的版本:adt-bundle-mac-x86_64-20140702
(4) NDK
NDK是用c/c++开发Android程序的工具。
下载地址:http://developer.android.com/tools/sdk/ndk/index.html,记得选择Mac版本,32位或64位。
我的版本:android-ndk-r10c
(5) JDK,JRE
据网友介绍,不用下载,当首次运行Eclipse时,会提示没有JDK,然后可以自动下载。可是我是自己下载的。
我的版本:jre-8u25-macosx-x64.dmg,jdk-8u25-macosx-x64.dmg
下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
http://www.oracle.com/technetwork/java/javase/downloads/index.html
安装完成后,运行Eclipse,准备尝试下,但Eclipse打不开,提示需要JavaSE6,那么问题来了,据网友介绍,Mac系统从10.10开始已经不支持JAVASDK1到7了,只能使用最新版本的Java,那么怎么解决没有JavaSE6打不开Eclipse的问题呢?
解决办法如下:
1) 进入目录(java实际安装目录):Macintosh HD/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/
2)修改其中的Info.plist文件
把
<key>JVMCapabilities</key>
<array>
<string>CommandLine</string>
</array>
修改为
<key>JVMCapabilities</key>
<array>
<string>JNI</string>
<string>BundledApp</string>
<string>WebStart</string>
<string>Applets</string>
<string>CommandLine</string>
</array>
当然,Info.plist文件是没有修改权限的
需要sudo一下,然后使用chmod a+w 命令修改该文件为可写的,使用nano或者vim修改此文件。
(6) 建议
建议把以上解压到同一工作目录下,如解压在Projects目录下,Projects/cocos2d-x-2.2.5,Projects/adt-bundle-mac-x86_64-20140702,Projects/android-ndk-r10c。
2. 新建cocos2dx项目
(1) 打开终端
(2) 进入project-creator目录
cd ***/Projects/cocos2d-x-2.2.3/tools/project-creator
(3) 执行create_project.py脚本,生成cocos2dx各个版本的工程文件
./create_project.py -project MyProjectName -package com.packagename.myprojectname -language cpp
格式说明:
MyProjectName,项目名称,自己设定
com.packagename.myprojectname,包的名称,自己设定
(4) 执行脚本后,生成的工程文件放在Projects/cocos2d-x-2.2.3/projects目录下。
其中proj.ios是ios工程文件所在目录。
proj.android是android相关文件所在目录。
(5) 建议
每次进行Android移植前,最好先在ios下编译运行通过没有问题,再进行android相关操作。
3. Android 相关环境变量配置
(1) 打开终端,输入 pico .bash_profile,回车
(2) 输入以下配置:
export ANDROID_SDK_ROOT= ***/Projects/sdk/
export ANDROID_NDK_ROOT=***/Projects/android-ndk-r9d/
export COCOS2DX_ROOT=***/Projects/cocos2d-x-2.2.3/
export NDK_ROOT=***/Projects/android-ndk-r9d/
export PATH=$PATH:$ANDROID_SDK_ROOT
export PATH=$PATH:$ANDROID_NDK_ROOT
其中,***是全路径,如/Users/YourName/Documents
“=/”都不要有空格,否则配置无效。
输入完成后,Control + x 保存,然后 Y,回车,搞定。
(3) 检测配置是否成功
关闭 终端,然后重新打开终端。
若配置有问题,则终端会提示:-bash: exoort: command not found
若没有提示,就是配置成功。
4. 创建第一个Android项目
(1) 启动Eclipse,new -> Project,选择Android Project From Existing Code,Browse到刚才创建的cocos2dx工程目录下的proj.android,记得取消Copy projects to workspace,否则编译有问题;然后,finish创建完成。
(2) 首次导入项目,会自动生成入口Activity,继承自Cocos2dxActivity。第一次,需要手动导入,方法是:再新建一个Project,选择Android Project from Existing Code,Browse到***/Projects/cocos2d-x-2.2.3/cocos2dx/platform/android文件夹即可。
(3) 编译之前,在build_native.sh中的# options下需要添加NDK_ROOT :NDK_ROOT= “***/Projects/android-ndk-r10c”。
(4) 编译错误问题:
1)’transform' is not a member of ‘std’的错误问题,解决办法,在labelReader.cpp中加入头文件:#include <algorithm>。
2)找不到头文件问题:
#include “AppDelegate.h”
#include <jni.h>
#include <android/log.h>
解决办法:搜索网友遇到的问题及解决办法,核对了下工程下的properties->C/C++ General下的Paths and Symbols里的各项路径配置的都没有问题。而我的问题是:刚打开Eclipse运行没有问题,只要打开一次main.cpp,就会报错,重启Eclipse就没有这个问题了,不打开main.cpp就不会有问题。暂时就这样吧,已经深夜,改天再查这个问题,若网友大神知道是什么问题,望交流啊。
5. 编译和运行
(1) 编译,生成.so库
打开终端,执行脚本***/proj.android/build_native.sh
编译出错的话,会提示,然后根据提示修改。
编译成功,会出现:
[armeabi] Install : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so
(2) 运行,生成apk
在eclipse里,点击运行,直接生成apk文件。
注意:在每次编译build_native.h成功后,右键eclipse中选中工程文件,点击Refresh刷新工程,替换掉eclipse中原先的.so文件,然后打包生成apk。
(3) 安装调试程序
若已经配置好Android虚拟机,运行时可以选择,然后直接在虚拟机上看程序效果。
若想在真机上安装程序,有两个方法:
1)把生成的apk文件,在proj.android/bin目录下,通过android管理软件或者其他方法,把apk放到手机上,然后手动安装,运行。
2)手机打开开发者模式,通过USB把手机连接到电脑上,打开手机的USB调试,eclipse识别了手机后,点击运行,直接可以把apk安装到手机上。记得要在手机未锁屏的状态下操作。这个办法只适用部分手机,有的手机必须手动安装apk。
Mac系统cocos2dx + android 开发环境配置的更多相关文章
- VMWARE + CENTOS在windows下配置cocos2d-x android开发环境
VMWARE + CENTOS在windows配置cocos2d-x android开发环境 之前使用cygwin在windows开发android,后来使用了c++11特性,在cygwin中更新工具 ...
- mac 下搭建 Android 开发环境
因工作需要,要在mac 下搭建 Android 开发环境.谷歌.度娘了好久,没有找个一个完整又系统的方法,很是苦恼.最终,皇天不负有心人,找到了下面这篇文档,结合亲身体验,特此记录.也为有这方面需求的 ...
- Windows系统下Android开发环境搭建
“工具善其事,必先利其器”.要想学好Android,搭建好Android开发环境是一个良好的开端. Windows系统下Android开发环境主要有4个大的步骤.分别是: 1.JDK的安装 2.ecl ...
- 基于Netbeans的安卓Android开发环境配置 - CSDN博客
原文:基于Netbeans的安卓Android开发环境配置 - CSDN博客 基于Netbeans的安卓Android开发环境配置 一.准备工作 NetBeans 勾选网页中的Accept-选择对应系 ...
- Android开发环境配置(win7_64bit)
Android开发环境配置(win7_64bit) 目录 1.概述 2.Android开发涉及的技术 3.Android常用开发环境搭建 4.注意事项 >>看不清的图片可在新标签打开查看大 ...
- Qt For Android 开发环境配置
想了想,还是再写一篇关于Qt for Android开发环境配置的教程. 准备:Java jdk,Android sdk,Android adb,Android ndk,Android ant,Qt ...
- Centos Android开发环境配置-Android Tools -android list sdk --extended --all
Centos Android开发环境配置-Android Tools -android list sdk --extended --all 安装完Android Tools后执行 android ...
- Ubuntu虚拟机+ROS+Android开发环境配置笔记
Ubuntu虚拟机+ROS+Android开发环境配置笔记 虚拟机设置: 1.本地环境:Windows 7:VMWare:联网 2.虚拟环境 :Ubuntu 14.04. 比較稳定,且支持非常多ROS ...
- cocos2dx mac下搭建android开发环境
1)下载eclipse 地址:http://www.eclipse.org/downloads/ 2)安装adt 打开eclipse,菜单:help->install new software ...
随机推荐
- uva 260 - Il Gioco dell'X
题解: 一定有人获胜,非黑即白:获胜条件为:black是由 上走到下,white是由 左走到右: #include <cstdio> using namespace std; int N; ...
- Chrome调试nodejs
1.安装node-inspector 命令: npm install -g node-inspector 2.nodemon --debug xxx.js启动项目(如果使用--debug-brk 就会 ...
- u盘禁用
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\USBSTOR]" ...
- 认识 web 服务器端脚本语言 PHP
---恢复内容开始--- 变量 定义:定义之后,值可以改变的量.PHP中的变量可以先后赋值为不同类型的值. 语法格式:$变量名 = 值; 常量 定义:常量:一旦声明之后,值就不能再改变的量. 语法格式 ...
- Lintcode--002(两个字符串是变位词)
写出一个函数 anagram(s, t) 判断两个字符串是否可以通过改变字母的顺序变成一样的字符串. 您在真实的面试中是否遇到过这个题? 样例 给出 s = "abcd", ...
- Animate 动画
angular 也提供了animate service 涉及 $animate,$animateProvider 1.2办法后通过 angular-animate.js 还扩展了一些功能 先来说说大致 ...
- MYSQL错误解决:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' ( ...
- Altium Designer规则
1.PCB规则 是PCB设计中至关重要的一个环节:保证PCB符合电气要求.机械加工(精度)要求:为自动布局.布线和部分手动布局.布线操作提供依据 为规则检查提供依据,PCB编辑期间,AD会实时地进行一 ...
- 终于懂了:Delphi的函数名不是地址,取地址必须遵守Object Pascal的语法(Delphi和C的类比:指针、字符串、函数指针、内存分配等)good
这点是与C语言不一样的地方,以前我一直都没有明白这一点,所以总是不明白:函数地址再取地址算怎么回事? ------------------------------------------------- ...
- IIS Express 的 applicationhost.config配置文件
文件所在目录 C:\Users\admin\Documents\IISExpress\config 或者 C:\Program Files\IIS Express\AppServer\ //加载语言文 ...