目前我配置的环境需求如下:

JDK 1.6

XCode Version 4.6 (4H127)

Cocos2d-x 2.2.0 

Android Developer 

一,下载安装

要配置环境一次性下载准备要以下东西:

1,下载jdk,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2,下载ndk,地址:http://developer.android.com/tools/sdk/ndk/index.html

3, ADT + sdk ,地址:http://developer.android.com/sdk/index.html

4,下载最新的Cocos2dx,目前已经到了2.2版本了,地址:http://cocos2d-x.org/download 官网改动挺大;

ps:2.1.5以上的版本编译工程创建都有一些差距;

5,下载xcode,我的是老版本4.6不用升级,破解了无证书的,没必要直接老版本更新,可以直接去网上下载安装包;

ps:破解地址也给一个吧http://blog.csdn.net/abcddtt/article/details/9074099对于没有证书或者真机调试新项目给别人看很有用的;

二,环境的配置安装

1,ios 的环境cocos2d-x2.2.0版本安装与升级

先安装好xcode,然后解压出cocos2d-x2.2的文件,从2.1.5以上后就没有模板的安装了,直接解压后用/Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/tools/project-creator目录下的create_project.py文件安装建工程

但是如果2.1.5之前的想升级cocos2dx2.2.0版本,进行如下操作:

(1)找以前旧版本的如cocos2d-x-2.1.4的install-templates-xcode.sh拷贝到2.2的目录下面

(2)再把/Users/yourmacname/cocos2dx.2.1.4/cocos2d-x-2.1.4/template/xcode4 整个文件夹复制到对应/cocos2dx.2.2.0/cocos2d-x-2.2.0/template/ 下面

(3)先获取mac的root权限,命令行执行 install-templates-xcode.sh -u-f ,看到installed就升级成功了,xocde新建工程看cocos2d.cpp就是2.2版本的了;

2, android 环境安装配置,jdk,ndk,eclipse 下载完之后整理以下目录,然后开始配置mac下的环境变量

整理后的目录放在users根目录下:

打开终端配置环境变量,输入以下命令:

vim ~/.bash_profile

按键i,进行插入编辑(如果输错d进行删除一行)

修改以下路径:

export PATH=$PATH:/Users/yourmacname/adtformac/sdk/tools

export PATH=$PATH:/Users/yourmacname/adtformac/sdk/platform-tools

export PATH=$PATH:/Users/yourmacname/android-ndk-r9b/

export ANDROID_NDK_ROOT=/Users/yourmacname/android-ndk-r9b/

export ANDROID_SDK_ROOT=/Users/yourmacname/adtformac/sdk

export NDK_ROOT=/Users/yourmacname/android-ndk-r9b/

复制进去

按esc,再命令输入命令:

:wq

3,创建一个新工程

终端打开路径 /Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/tools/project-creator

用命令创建工程:

 ./create_project.py -project projectname -package com.xxx.xxxx -language cpp

替换自己的包名和工程名,回车如图示就算建立成功了

你现在可以通过xcode打开你新建的项目工程了,工程目录在:

/Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/projects/mytest

双击文件夹proj.ios/mytest.xcodeproj就可以打开工程,直接run就可以跑起来;

ios端配置就完成了,很简单;

另外推荐大家一个小工具go2shell(路径命令终端快捷的工具拖到Finder工具栏上面,一键就可以定位打开这个路径的终端),这玩意儿图标也很萌...

4,配置android eclipse的环境

打开eclipse,-> import目录 /Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/cocos2dx/platform/android/java

加载libcocos2d工程,因为新工程需要把他作为lib引用

(1),adt->设置->General->Workspace->Link Resources->new  对话框里面name填COCOS2DX,路径选择:/Users/yourmacname/cocos2dx.2.2/cocos2d-x-2.2

如下图:

ok

(2),adt->设置->Android->SDK location  选择你的sdk路径/Users/yourmacname/adtformac/sdk

如下图:

默认的sdk自带了一个4.4的rom, APIlevel = 19

ok

(3),adt->设置->Android->C/C++ ->Build->Environment   Add 一个ndk路径/Users/yourmacname/android-ndk-r9b

ok

(4),import刚才新建的工程/Users/yourmacname/cocos2dx.2.2/cocos2d-x-2.2/projects/mytest/proj.android

ok,如果上面的步凑没什么问题,导入应该不会报错:

ok,到这步没有报错的话,应该可以直接跑起来了,可以插上android真机调试以下看看如何;

点击run->你的工程项目在eclipse Consle里面可以看到如下图:

我们已经成功通过ndk编译出.so文件,真机上就没问题了;

5,编写代码,进行跨平台交叉编译

以上我们已经成功完成了工程的创建以及ios,android平台都可以跑起来新建的项目了,事情还没完,我们新写了c++代码,怎么交叉编译呢?换句话说我们在win32,xcode,eclipse任何一个开发平台写了代码怎么同步到其他平台呢?

例:我在xcode写代码再同步到eclipse上去

我打开了我之前xcode创建的工程,里面编写了一个BaseSoundControl.cpp文件,显然这个类是用来控制声音的,具体代码:

#include "BaseSoundControl.h"
#include "SimpleAudioEngine.h" BaseSoundControl::BaseSoundControl(CCString* videourl,bool repetflag)
{ CocosDenshion::SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic(videourl->getCString()); CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic(videourl->getCString(), repetflag); }

用到了CocosDenshion,win32下面如果用到声音需要手动起添加,andriod新创建的工程也要去手动添加;

xcode ios 跑起来效果如下:

先把写的代码copy到对应工程里面,复制的时候注意对应目录关系如下图,Classes和Resources对应里面的所有东西(c++代码和图片,和音频文件)都copy过来;

然后F5刷新我们的android工程,就会看到mytest项目中classes文件夹同步上了我们写的c++代码;

先别着急直接run,会报错,因为在android建工程没有cocos2d-x里面专处理声音跨平台的CocosDenshion库,手动添加它;

工程名->右键->new->folder

Advanced ->link to~~~ ->Varivbels ->选择cocos2dx ->Extend->选择 CocosDendhion ok!如下图:

最后filsh就有了这个库了;

还没完事儿,点run还是会报错,还有最重要的一步,编写.mk文件!!!!

eclipse中直接在jni中打开Android.mk文件,做如下修改,以后写了一个cpp就的在这里配置一个;

ok,所有工作完成了,可以点run了!!

再次生成.so成功,标志着跨平台编译跑起来了!

【cocos2d-x 环境配置-Mac配置篇】的更多相关文章

  1. 【Cocos2d-Js基础教学(1)JS -Mac配置篇】

    一.准备工作 Windows配置篇请见 http://cn.cocos2d-x.org/tutorial/show?id=1396 1.安装python 2.下载Android SDK Android ...

  2. Mac 配置教程-开发篇

    将 Mac 日常使用的软件和开发软件区分开,将之前写的 Mac 配置的文章分成了两篇: Mac 配置教程-日常篇 Mac 配置教程-开发篇 图床 iPic 设置快捷键 Command+Shift+u ...

  3. Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例

    看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...

  4. mac配置java开发环境: jdk1.7 +sdk1.7+maven +tomcat

    1.先安装jdk ,才能安装sdk .2 mac中jdk1.7的默认位置:/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home ...

  5. mac 配置Python集成开发环境(Eclipse +Python+Pydev)

    1.下载Mac版64位的Eclipse. 进入到Eclipse官方网站的下载页面(http://www.eclipse.org/downloads/),我选择了下图所示的软件包, 浏览器在下载过程中使 ...

  6. mac 配置Python集成开发环境

    mac 配置Python集成开发环境(Eclipse +Python+Pydev) 1.下载Mac版64位的Eclipse. 进入到Eclipse官方网站的下载页面(http://www.eclips ...

  7. Node.js安装及环境配置之Windows篇

    Node.js安装及环境配置之Windows篇   一.安装环境 1.本机系统:Windows 10 Pro(64位)2.Node.js:v6.9.2LTS(64位) 二.安装Node.js步骤 1. ...

  8. 自学Aruba5.3.2-Aruba安全认证-有PEFNG 许可证环境的认证配置MAC

    点击返回:自学Aruba之路 自学Aruba5.3.2-Aruba安全认证-有PEFNG 许可证环境的认证配置MAC 1. MAC认证配置前言 建议把认证通过前的初始化role定义为denyall,否 ...

  9. Mac配置Java开发环境

    笔者从Window上转到Mac上做开发,一切配置都要重新开始,开发环境配置介绍如下: 1. 下载JDK 从下面链接选择合适版本的安装包进行下载...笔者下载的是jdk-9.0.1 链接:http:// ...

随机推荐

  1. python manage.py runserver 0.0.0.0:8000

    python manage.py runserver 这种命令行,可以在服务器端输入IP:8000直接访问 在 python manage.py runserver 127.0.01:8000 在服务 ...

  2. 阻止后续事件的发生 onclick 双return 事件绑定(..$).click一个return

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. vs启动项目提示Web 服务器被配置为不列出此目录的内容。

    解决方法 确认网站或应用程序配置文件中的 configuration/system.webServer/directoryBrowse@enabled 属性已设置为 true. 配置一下web.con ...

  4. idea 插件

    https://plugins.jetbrains.com/plugin/4509-statistic

  5. Redis 位操作

    [Redis 位操作] 1.GETBIT key offset 对 key 所储存的字符串值,获取指定偏移量上的位(bit). 当 offset 比字符串值的长度大,或者 key 不存在时,返回 0  ...

  6. Git报错的解决方案汇总

    错误1: error: Your local changes to the following files would be overwritten by merge:Please, commit y ...

  7. Spring Boot 简单入门

    添加相关依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...

  8. php闭包bindTo方法用法

    从手册知道,Closure::bindTo — 复制当前闭包对象,绑定指定的$this对象和类作用域. 创建并返回一个 匿名函数, 它与当前对象的函数体相同.绑定了同样变量,但可以绑定不同的对象,也可 ...

  9. Golang之struct

    1.用来定义复杂数据结构 2.struct里面可以包含多个字段(属性) 3.struct类型可以定义方法,注意和函数的区分. 4.struct类型是值类型 5.struct类型可以嵌套 6.Go语言没 ...

  10. oepnni安装

    sudo apt-get install libopenni-dev libopenni2-dev / apt-get install libqhull-dev