• 【cocos2d-x 环境配置-Mac配置篇】


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

    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成功,标志着跨平台编译跑起来了!

  • 相关阅读:
    「AHOI / HNOI2017」单旋
    【CQOI2012】局部极小值
    【CQOI2011】放棋子
    【gdoi2018 day2】第二题 滑稽子图
    【JSOI2018】潜入行动
    在vue中获取不到canvas对象? 两种解决办法。
    数据可视化echart
    在vue中使用高德地图开发,以及AMap的引入?
    mac 常使用的一些小技巧
    form编码方式application/x-www-form-urlencoded和multipart/form-data的区别?
  • 原文地址:https://www.cnblogs.com/zisou/p/cocos2d-xpeizhi0.html
Copyright © 2020-2023  润新知