问题背景
之前由于某种原因,对办公的Mac 系统进行了重装。然后创建项目、使用pod安装依赖时报错:
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': dlopen(/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle, 0x0009): tried: '/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))) - /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle (LoadError)
网上搜索是因为M1芯片的适配问题:
https://github.com/CocoaPods/CocoaPods/issues/10349
这里大致是ffi的问题,这是一个兼容性问题,关于此问题 github有相关的issue,目前是开放状态。尚未有最终的结局方案,但我相信,后面肯定是能解决的。
只是现在不处理这个问题,是无法使用cocopods的。所以,下面的这个是临时解决方案。后续ffi肯定会从代码层面适配Apple的M1芯片。
- 首先移除 ffi
sudo gem uninstall ffi
- 在访达中找到终端,右键显示简介,使用Rostta打开
- 重新安装 ffi
sudo arch -x86_64 gem install ffi
- 执行pod
arch -x86_64 pod install
网友评论