macOS Monterey v12.4 M1芯片 iOS 开发环境(艰难曲折的)配置过程记录

本文作者分享了在新MacOS系统中安装Homebrew、解决RVM和CocoaPods安装问题的详细过程,包括翻墙、镜像源切换、权限设置及常见错误排查,供读者参考避免踩坑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

电脑环境跟型号如标题所说,新电脑,这是背景,macOS系统换了个系统,很多东西都不一样,网上的文章很多对于我不适用,不具备参考性,每次升级系统、换电脑,配置环境都要踩一次坑。

如果想参考我的过程去配置的,建议先看完全文再决定,不要一步一步跟着,我这个过程不一定是最合适的,你跟着我走,可能就是跟着我把我踩过的坑再踩一遍。

安装 homebrew

首先是安装homebrew,Homebrew 是 Mac 平台的一个包管理工具,提供了许多Mac下没有的Linux工具等。官网:https://brew.sh,按照官网的安装命令进行安装,这一步必须翻墙,否则会失败,提示 “curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 7 ms: Couldn’t connect to server”:

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

没有条件翻墙也可以通过更换镜像源,更换步骤如下(有条件翻墙的跳到 (4) 设置环境变量):

(1) 下载官网的安装脚本

$ curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh >> brew_install

(2) 在用户文件夹下打开 brew_install 文件,把下面这两行的链接替换为清华大学的镜像链接。
替换前:

HOMEBREW_BREW_DEFAULT_GIT_REMOTE="https://github.com/Homebrew/brew"
HOMEBREW_CORE_DEFAULT_GIT_REMOTE="https://github.com/Homebrew/homebrew-core"

替换后:

HOMEBREW_BREW_DEFAULT_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"
HOMEBREW_CORE_DEFAULT_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"

(3) 使用修改后的安装脚步进行安装

$ /bin/bash brew_install

在这里插入图片描述
(4) 设置环境变量
这时执行 brew -v 还是会报错 “zsh: command not found: brew”,详细看刚刚安装后的warning,可以发现是环境变量的设置问题,官方给出的输出日志里面也给出了处理的方案(见上面截图):

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

这时候输入 brew -v 就可以看到版本输出了。

$ brew -v
Homebrew 4.2.4

安装 rvm

尝试过安装 gem 然后通过 gem 安装 cocoapods,失败,提示权限问题,具体没截图忘记了。网上让我用 brew 安装 cocoapods,也是过时了的方法,现在官方都是推荐用 rubygem 安装的,brew 只能安装到 1.5.3,而最新的 cocoapods 版本现在已经是 1.11.3 了。
按同事的建议,尝试按照这篇文章安装 rvm,然而安装完却无法安装 ruby:

$ curl -L https://get.rvm.io | bash -s stable

于是执行 rvm implode 卸载 rvm,之后按照输出的提示,清除了本地的文件夹,以及修改了各个文件中的环境变量。
在这里插入图片描述
然后安装另一个同事给的这篇文章的提示,重新安装了rvm,安装步骤如下:
(1) 下载 rvm 安装脚本

$ git clone https://github.com/rvm/rvm.git

(2) 下载完之后在路径 ~/rvm/bin/ 中找到 rvm-installer,双击运行完成安装。

(3) 配置环境变量
修改 ~/.bash_profile 文件的内容为

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

然后执行

$ source ~/.rvm/scripts/rvm

这时候执行 rvm -v 可以看到安装成功了:

$ rvm -v
rvm 1.29.12-next (master) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

安装 ruby

根据 rvm list known 命令,可以看到最新的版本,然后选择你想要安装的版本,进行安装:

$ rvm install 2.7.6

然而再次受挫,我收到以下失败提示:
在这里插入图片描述
于是我按照提示,执行了 brew tap --repair ,然后执行了 brew doctor。得到如下:
在这里插入图片描述
看起来是之前的镜像有问题,于是我又再次按照提示一一照做,知道 brew doctor 再无错误提示,解决过程如下:
在这里插入图片描述
再次回到这一部分的一开始,执行 rvm install 2.7.6,终于顺利完成 ruby 安装!

$ ruby -v
ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a) [arm64-darwin21]

此外,处理完brew的问题之后,gem的版本也从 3.1.6,变成了3.3.18。

安装 cocoaPods

由于之前用 brew 安装了 1.5.3 的 cocoapods,所以首先要先卸载旧版本的 cocoaPods,
首先,查看目前 gem 中安装的所有 cocoapods 组件:

$ gem list --local | grep cocoapods

然后,把这些组件一一卸载

$  sudo gem uninstall cocoapods-deintegrate

然后再安装指定版本的 cocoaPods(末尾参数 -V 可以看到具体安装进度):

$ sudo gem install cocoapods -v 1.11.3 -V
……
$ pod --version
1.11.3

安装 cocoaPods 成功!

……

然而事情还没完,需要下载pod的索引仓库。执行pod setup久到你怀疑人生,最后我是手动下载了镜像源到本地的。

$ cd ~/.cocoapods/repos
$ pod repo remove master
$ git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master
$ pod repo remove trunk

最后一行命令很重要,不移除trunk,在新版本的cocoaPods(1.8.0+)上会报错。
这个时候你的 ~/.cocoapods/repos 就只有 master 一个文件夹了,然后在你的 Podfile 上面添加这一行:

source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'

这个时候就可以pod install了。但是我依然pod了很久,最后用了手机热点才顺利pod下来的。
更多详细的解释参加这篇博文,我这里只记录这次的配置过程。

配置 Charles

第一步:
安装完 Charles 之后,打开弹窗提示以下内容:
“Charles cannot configure your proxy settings while it is on a read-only volume. Perhaps you are running Charles from the disk image? If so, please copy Charles to the Applications folder and run it again. Otherwise please ensure that Charles is running on a volume that is read-write and try again.”
按照网友指导的,在终端输入以下两行命令,打开 Charles 应用的读写权限。

$ sudo chown -R root "/Applications/Charles.app/Contents/Resources"
$ sudo chmod -R u+s "/Applications/Charles.app/Contents/Resources"

第二步:
打开模拟器,发现无抓包捕获反应,重启模拟器不行,重启charles再重启模拟器也不行,最后关闭翻墙软件,再重启charles跟模拟器,解决。

第三步:
同时,在Charles菜单:Help- SSL Proxying-Install Charles Root Certificate in iOS Simulators无效果,在模拟器的Safari浏览器,打开chls.pro/ssl,网页自动开启证书下载,证书下载完,进入设置—通用—设备管理里面进行安装。

第四步:
可以看到Charles有捕获接口了,但是Xcode控制台提示:“此服务器的证书无效。您可能正在连接到一个伪装成“xxx.com”的服务器,这会威胁到您的机密信息的安全。”
要进入设置—通用—关于本机—证书信任设置,找到对应的证书,打开后面的开关,这下可以顺利使用Charles抓模拟器的包了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值