应避免使用系统自带ruby安装cocoapods,因其受sip保护且版本过旧;推荐用homebrew安装独立ruby(3.x),配置国内gem源(如ruby china),再执行gem install cocoapods(无需sudo)。
直接用系统自带的 ruby 安装 cocoapods 会触发 macos 的 sip(系统完整性保护)机制,导致写入 /library/ruby/gems/ 目录被拒绝——这不是普通权限问题,而是系统级防护。绕过它的核心思路是:**不碰系统 ruby,改用用户可写路径下的 ruby 环境**。
用 Homebrew 安装独立 Ruby(推荐)
这是目前最稳定、适配性最强的方式,尤其适合 macOS 12+(Monterey)、13(Ventura)、14(Sonoma)及最新 15(Sequoia)系统:
- 先装 Homebrew(若未安装):
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"(国内加速源,成功率高) - 安装新版 Ruby:
brew install ruby - 让终端优先使用它(Apple Silicon/M-series 芯片):
echo 'export PATH="/opt/homebrew/opt/ruby/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc
Intel 芯片则把路径换成/usr/local/opt/ruby/bin - 验证:
which ruby应输出/opt/homebrew/opt/ruby/bin/ruby,ruby -v显示 3.x 版本
换国内 gem 源 + 无 sudo 安装
Homebrew Ruby 就绪后,所有操作都不需要 sudo:
- 删掉被墙的官方源:
gem sources --remove https://rubygems.org/ - 添加 Ruby China 镜像:
gem sources -a https://gems.ruby-china.com/ - 确认只剩一个有效源:
gem sources -l - 安装 CocoaPods:
gem install cocoapods
如果必须用系统 Ruby(临时应急)
仅限简单测试或旧项目维护,不建议长期使用:
- 跳过系统目录限制,指定安装到
/usr/local/bin:sudo gem install -n /usr/local/bin cocoapods - 注意:此方式仍可能因 Ruby 版本过低(如 2.6.x)报错
cocoapods-downloader requires Ruby >= 2.7.4,需配合gem update --system或放弃
初始化仓库卡住?换清华镜像源
pod setup 首次运行慢,常因 Specs 仓库克隆失败。可手动切换为清华镜像:
- 在项目
Podfile第一行加:source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git' - 再执行:
pod repo remove master && pod repo add master https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git











