You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS Monterey编译quabs遇xcrun架构不兼容错误求助

解决M1 Mac编译quabs时xcrun架构不兼容问题

问题背景

在M1芯片的MacBook Air上编译quabs QBF求解器,执行make时出现以下架构不兼容错误:

xcrun: error: unable to load libxcrun (dlopen(/Applications/Xcode.app/Contents/Developer/usr/lib/libxcrun.dylib, 0x0005): tried: '/Applications/Xcode.app/Contents/Developer/usr/lib/libxcrun.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e'))).

重装Command Line Tools后问题依旧,且/Library/Developer下仅存在Xcode目录,无CommandLineTools目录。

解决步骤

1. 确认Xcode为Apple Silicon适配版本

当前Xcode的libxcrun.dylib是x86_64架构,与M1的arm64e不兼容,需确保安装的是适配Apple Silicon的Xcode版本:

  • 打开App Store,搜索Xcode,重新下载安装(若之前安装的是Intel版本,会自动替换为Apple Silicon版本)。
  • 验证架构:执行以下命令,输出应为arm64或包含arm64的结果:
    lipo -info /Applications/Xcode.app/Contents/Developer/usr/lib/libxcrun.dylib
    

2. 指定Xcode内置的Command Line Tools路径

由于Xcode已内置Command Line Tools,无需单独安装,直接指定路径即可:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

验证路径是否生效:

xcode-select -p

输出应为/Applications/Xcode.app/Contents/Developer。

3. 清理编译缓存并重新编译

回到quabs的build目录,清理之前生成的缓存文件,重新执行编译:

cd /path/to/quabs/build
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Release ..
make

4. 备选方案:用Rosetta 2兼容模式编译

若上述步骤仍未解决,可尝试以x86_64架构编译:

  • 打开终端,右键终端图标选择「显示简介」,勾选「使用Rosetta打开」。
  • 重启终端,重新执行完整的克隆、初始化子模块、编译步骤。

5. 检查Xcode命令行工具配置

打开Xcode,依次点击「Xcode」→「偏好设置」→「位置」,在「命令行工具」下拉菜单中选择当前安装的Xcode版本,确保配置生效。

内容的提问来源于stack exchange,提问作者Theo Deep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 06:45:32