M1芯片MacBook配置NativeScript iOS开发环境运行报错咨询
M1 芯片 Mac NativeScript iOS 运行报错解决方案
报错信息:arch: posix_spawnp: pod: Bad CPU type in executable
该报错的核心原因是 NativeScript 内部调用 CocoaPods 时默认使用 ARM 架构执行,与 M1 芯片的适配逻辑冲突,你之前手动执行指定架构的pod命令不生效是因为没有覆盖NativeScript的内部调用逻辑,可按以下步骤解决:
- 先清理现有冲突的依赖包
执行以下命令完全卸载本地的ffi和cocoapods,存在多版本时选择全部卸载即可sudo gem uninstall cocoapods sudo gem uninstall ffi - 用Rosetta模式安装依赖
右键访达中的「终端」应用,点击「显示简介」,勾选「使用Rosetta打开」,重启终端后执行:
安装完成后可取消终端的Rosetta勾选,不影响后续正常使用sudo gem install ffi sudo gem install cocoapods - 配置NativeScript项目的pod执行规则
在项目根目录新建/编辑.nsconfig.js文件,添加以下配置,强制所有pod相关操作走x86_64架构:module.exports = { ios: { podInstallCommand: 'arch -x86_64 pod install' } } - 清理缓存重新运行
执行以下命令清理项目构建缓存后再启动应用:ns clean ns run ios
如果以上步骤仍未解决,可直接指定架构执行ns命令作为备选方案:
arch -x86_64 ns run ios
内容的提问来源于stack exchange,提问作者A Damian
相关产品推荐
相关产品推荐

