Cocos2d-x 4.0 工程首次建立与编译(Mac m1)

Mac m1芯片下将cocos2d-x升级至4.0版本后,官方剔除了不同平台的工程以及变更了编译方式,直接使用cmake构建,需要做一些前置的准备工作。

环境准备:

|-----------|---------------------|---------------------------------------------------------------------------------------------------|
| 项 | 版本 | 备注 |
| MacOS | 10.3 or later | |
| python | 2.7.16(建议>=2.7.10) | |
| cmake | 3.29.3 | Download CMake |
| xcode | 15.4 | |
| cocos2d-x | 4.0 | Download Cocos2d-x |

设定cocos2d-x 4.0开发环境

1.安装cmake

cmake直接使用官网提供的dmg包安装即可,安装完成后自动添加环境变量,安装步骤略。

2.python环境验证

mac自带python环境

bash 复制代码
python2 --version
Python 2.7.16

3.安装cocos2d-x 4.0

3.1 安装ndk&sdk

1.解压至指定目录

2.设置环境变量

bash 复制代码
open ~/.bash_profile

3.使设定生效

bash 复制代码
source ~/.bash_profile

3.2 设定cocos2d-x-4.0环境变量

执行cocos2d-x 4.0根目录下的setup.py(python名称请自行选择,此处我设置python3为python,原python设置为python2),其他的按提示安装即可。执行效果如下:

4.验证成果

4.1 新建工程

bash 复制代码
cocos new HelloWorld2 -l cpp -d .

执行效果如下所示:

5.新建文件夹

bash 复制代码
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/

mkdir mac-build && cd mac-build
cmake .. -GXcode

执行效果如下:

6.xcode中运行

6.1 打开xcode工程文件

6.2 选择需要构建的内容

6.3 执行构建【build】

6.3.1 修正错误
错误一:强制转化类型
cpp 复制代码
iconv_close((iconv_t)_iconv);
iconv((iconv_t)_iconv, (char**)&pin, &inLen, &pout, &outLen);
错误二:无法引入std命名空间

解决方法:

cpp 复制代码
#include <functional>

7.成果展示

至此,在Mac m1芯片2021款macbook pro已运行成功。

如果喜欢请一键三连,存在问题也请不吝赐教。

email:code_captain@163.com

相关推荐
魔士于安20 小时前
Unity资源Toon City Pack 发电厂 工地 公园 地铁站口 银行 车 直升飞机 可动 URP
游戏·unity·游戏引擎·贴图·模型
yuanzhengme1 天前
AI【应用 04】FunASR离线文件转写服务开发指南(实践篇)
人工智能·macos·xcode
SmartRadio1 天前
NRF52833 + MPU6050 室内定位跟随无人机
游戏引擎·无人机·cocos2d
心前阳光1 天前
Unity之运行时标准材质半透明无效果
unity·游戏引擎·材质
x-cmd1 天前
[260412] x-cmd v0.8.13:x free 新增进程内存显示,feishu、telegram REPL 机器人齐上线!
linux·macos·机器人·内存·x-cmd·telegram·feishu
张老师带你学1 天前
Unity buildin 石头围墙 树木 树墩子 卡通风格 栅栏 小桥 低多边形
科技·游戏·unity·游戏引擎·模型
伴野星辰1 天前
Pycharm打包教程:电脑(windows / macos)+ 手机(安卓 / IOS)全流程
macos·智能手机·pycharm
简单点了1 天前
mac安装wireshark
测试工具·macos·wireshark
tang7451639621 天前
mac的ideal中调用driver = webdriver.Chrome() 启动不了的原因
chrome·python·macos
呆呆敲代码的小Y1 天前
【Unity工具篇】| 使用YooAsset接入自己的游戏项目,实现完整热更新流程
游戏·unity·游戏引擎·热更新·yooasset·资源热更新