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

相关推荐
mxwin3 小时前
Unity Shader Alpha测试 · 模板测试 · 深度测试
unity·游戏引擎
2601_956002816 小时前
冬日狂想曲(赠去马赛克补丁)2026.5.13最新版免费下载 转存后自动更新 (看到请立即转存 资源随时失效)pc手机版通用
智能手机·游戏引擎·电脑·游戏程序·动画·游戏美术
Sator16 小时前
unity解决粒子与物体接触时的硬边缘问题
unity·游戏引擎
最后一支迷迭香8 小时前
苹果的MacOS系统适合做Java开发吗
java·开发语言·macos
AirDroid_cn8 小时前
macOS Sequoia协同编辑:Pages文档冲突自动合并全攻略
macos
irpywp8 小时前
平台禁下载、格式不兼容、剪辑太麻烦,Media Downloader:mac 原生媒体下载工具,一站式解决视频下载、转码、裁剪、管理难题
macos·开源·github·音视频·媒体
RPGMZ9 小时前
RPGMZ NPC头顶自动显示一段消息
前端·游戏引擎·rpgmz·rpgmakermz
城管不管10 小时前
Maven Helper
java·macos·intellij-idea
JasonFreeLab10 小时前
DeepSeek TUI 安装配置极速指南(Win / Mac / Linux)
linux·运维·macos·ai·ai编程·ai写作
程序员JerrySUN11 小时前
Jetson边缘嵌入式实战课程第三讲:L4T 与 Jetson 系统架构
linux·服务器·人工智能·安全·unity·系统架构·游戏引擎