新配了一台Mac M1,在pod install时报一堆错,找了好久才发现是跟M1有关。
报错信息有:
LoadError - dlopen(/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.1/lib/ffi_c.bundle, 0x0009)
开始一直以为是ruby环境安装有问题,卸载重装还是一样的报错。
新电脑如果通过App Store下载了Xcode,记得要在pod install 前先在命令行安装Xcode 插件:
xcode-select --install
最后我是在控制台的崩溃日志里面看到了安装pod真正的报错是 /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.1/lib/ffi_c.bundle导致的。大致就是ffi的问题,这是一个兼容性问题。目前找到的解决方案就是:
1、先卸载原来的ffi:
sudo gem uninstall ffi
2、在访达-应用程序中找到终端.app,右键显示简介,勾选“使用Rosetta打开”。我这里用的是iTerm:
3、再次安装ffi:
sudo gem install ffi
4、现在可以尝试pod install了(前提是pod setup都完成了),问题就解决了。