Mac Mini M1编译KMM iOS framework报mach-o wrong architecture错误求助
问题1:mach-o, but wrong architecture编译错误
该错误由Kotlin 1.5.21版本对Apple Silicon(M系列)Mac的原生编译支持不完善导致,可按以下方案解决:
- 优先升级项目Kotlin版本到1.6.10及以上,该版本开始官方原生支持Apple Silicon架构编译,无需额外兼容操作
- 若必须保留1.5.21版本,执行以下操作:
- 右键Android Studio应用图标,选择「显示简介」,勾选「使用Rosetta打开」,重启Android Studio后再执行编译
- 清除Konan本地缓存:执行
rm -rf ~/.konan命令,编译时会重新拉取对应x86架构的依赖库 - 确认build.gradle配置中iOS目标指定为x64,示例配置:
ios { binaries { framework { xcf.add(this) } } } // 也可显式指定iosX64目标
问题2:zsh: operation not permitted: ./gradlew报错
可按顺序排查解决:
- 首先确认你当前执行命令的路径是项目根目录,目录下存在
gradlew文件 - 给gradlew添加可执行权限:执行
chmod +x gradlew命令后重试 - 若仍报错,是Mac系统安全限制导致:打开「系统设置>隐私与安全性>完全磁盘访问」,勾选你使用的终端工具(终端/iTerm2)以及Android Studio,重启终端后再执行命令即可
内容的提问来源于stack exchange,提问作者Russ
相关产品推荐
相关产品推荐

