1. 切换Homebrew至m1版本,(此处安装Rosetta)参考链接
2. 安装pyenv,arch -x86_64 brew install pyenv,参考链接,pyenv git地址
3. pyenv install 2.7.18,失败
3.1 The Python ssl extension was not compiled. Missing the OpenSSL lib
openssl版本不一致,需要openssl@1.0,brew中更新会更新其到1.1版本,参考链接,安装openssl@1.0
3.2 第一步安装的Rosetta后,复制一个终端,在Finder中右键新终端显示简介,勾选“使用Rosetta打开”。此终端可以执行未适配m1芯片的命令。
3.3 对1.和3.2的补充(个人理解):
普通终端中,在命令前手动输入“ arch -x86_64 ”前缀可以强制当次命令使用x86结构执行,适合单次简单命令如brew install xxx;但在面对复杂命令如 pyenv install x.y.z时,其内会复数次引用其他命令如pip readline,arch -x86_64前缀此时仅对pyenv install x.y.z生效而后续命令失败;此时即应使用Rosetta终端。
---------------------------------------------------------------------------------------------------------
2023-04-28编辑
4. 应苹果要求强制升级xcode到14.1以上,鉴于14.3存在ios13.x机型上打包崩溃问题,升级xcode至14.2,由于是手动安装,需要手动安装对应版本的命令行工具
xcode-select --install
5. 之前由于mac系统升级不再自带python2所以使用pyenv控制python版本,使用python 2.7.18进行cocos打包,使用fab做ios测试包的自动部署;但升级macOs13后,在使用fab命令前需要手动切换python至3.x版本。
具体在~/.zshrc下添加(PYENV_ROOT相关第2条配置)
alias python="$(pyenv which python)"
alias pip="$(pyenv which pip)"
alias pip2="$(pyenv which pip2)"
alias pip3="$(pyenv which pip3)"
添加后,使用pyenv global 切换pyhton版本,并切换后记得重新 source ~/.zshrc
fab命令所需依赖现在均需在切换3.x的python之后再进行安装