一次让人崩溃的cocoapod经历
1、事件描述
执行pod install命令是发现如下报错: cocoapod报错:LoadError - 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 'arm64', need 'x86_64'))
2、解决过程
阶段1:开始判断是M1芯片问题,但是之前没有事,一直用公司电脑,自己电脑很久不用,突然不行了?
阶段2:电脑里有很多ruby版本,提示2.6.0,但我的ruby是3.4.1,版本不一致?
阶段3:无数次google,看图,真好像好像,但是解决不了
阶段4:AI问答,把AI提供的答案就试了一遍,重装又卸载,卸载又重装,没鸟用,已经想手撕AI
3、最后的灵光,rm,成了?
1、又看了一遍ruby -v版本,3.4.1
2、看看pod到底在哪,which pod:/usr/local/bin/pod
3、反正不管用,删了:rm /usr/local/bin/pod
4、再看一次,删干净没有?:which pod,好家伙:ruby下还有一个:/usr/local/opt/ruby/bin/pod
5、执行pod install,成了,马达!!!!
4、灵魂扣问:为什么会成功?
1、为何会有两个pod路径?
1、早期的cocoapod直接命令装的,早期ruby,2.6.0
2、近期使用了rbenv,管理一下ruby,然后又装了一次ruby3.4.1,然后又安了pod
3、这两个ruby下都有一个pod,这就是为何删除了一个,还有一个的原因
4、问题出在哪里?
当前的ruby环境是3.4.1,但pod默认却在2.6.0上运行,所以当我删除2.6.0下的pod后,3.4.1环境下的pod就生效了