为了账号安全,请及时绑定邮箱和手机立即绑定

由于 MACOSX_DEPLOYMENT_TARGET,Big Sur clang“版本无效”错误

由于 MACOSX_DEPLOYMENT_TARGET,Big Sur clang“版本无效”错误

幕布斯6054654 2023-08-22 18:00:52
我认为,由于 Big Sur 正在为新操作系统推出新的修补程序,因此尚未发生。当尝试安装用于clang编译的模块时,会引发以下错误:clang: error: invalid version number in 'MACOSX_DEPLOYMENT_TARGET=11.0'目前正在运行:Mac 操作系统 Big Sur,11.0 测试版英特尔CPU(i386)Python 3.8.0 通过安装pyenv多个模块具有clang依赖关系,因此这个错误似乎很常见。一个例子:pip install multidict安装旧版本的命令行工具(例如 11.5)也不起作用。
查看完整描述

5 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞


>>> softwareupdate --all --install --force

Software Update Tool


Finding available software

No updates are available.

...遵循“自制医生”的智慧解决了这个问题,即删除并重新安装:


sudo rm -rf /Library/Developer/CommandLineTools

sudo xcode-select --install


查看完整回答
反对 回复 2023-08-22
?
万千封印

TA贡献1891条经验 获得超3个赞

弄清楚我这边的问题。


之前我是XCode从 App Store (11.7) 安装的,并将其 SDK 设置为默认值:


sudo xcode-select --switch /Applications/Xcode.app/

但是,这似乎带有不受支持的版本clang:


  λ clang --version

Apple clang version 11.0.3 (clang-1103.0.32.62)

Target: x86_64-apple-darwin20.1.0

Thread model: posix

InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

通过以下方式将其设置xcode-select为最新版本:


sudo xcode-select --switch /Library/Developer/CommandLineTools

编辑(2020 年 11 月 15 日)


尝试上述更改时您可能会收到错误:


xcode-select: error: invalid developer directory '/Library/Developer/CommandLineTools'


要解决此问题,您必须从此处的 Apple 官方网站安装最新的命令行工具。在撰写本文时,我安装了Xcode 12.3 beta 的命令行工具。


clang对工作版本的更改:


  λ clang --version

Apple clang version 12.0.0 (clang-1200.0.32.2)

Target: x86_64-apple-darwin20.1.0

Thread model: posix

InstalledDir: /Library/Developer/CommandLineTools/usr/bin

内置的 Big Sur SDK 是 version 10.15,它似乎可以正常工作:


  λ ls /Library/Developer/CommandLineTools/SDKs

MacOSX.sdk      MacOSX10.15.sdk

切换后,multidict安装成功。


  λ pip install multidict

Collecting multidict

  Downloading multidict-4.7.6-cp38-cp38-macosx_10_14_x86_64.whl (48 kB)

     |████████████████████████████████| 48 kB 589 kB/s

Installing collected packages: multidict

Successfully installed multidict-4.7.6

进一步的调查似乎表明这是苹果的设计选择(来源):

https://img1.sycdn.imooc.com//64e487890001da5705860283.jpg

查看完整回答
反对 回复 2023-08-22
?
慕斯王

TA贡献1864条经验 获得超2个赞

我已经删除并重新安装了 xtools CLI,但错误仍然存在。

我需要做的就是

export SYSTEM_VERSION_COMPAT=1

然后错误就消失了。

“SYSTEM_VERSION_COMPAT”是一个环境变量,macOS 实用程序和第三方使用它来确定它们在较新版本的 macOS 上运行时的行为方式,即是否允许向后兼容。它经常被开发人员使用,并不能保证应用程序能够正常运行。

其值范围为未设置、0(禁用)和1(启用)。默认值因操作系统版本而异。虽然影响不大,但最好在更改此值之前确认/备份系统的现有设置。


查看完整回答
反对 回复 2023-08-22
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

就我而言,我必须删除/Library/Developer/CommandLineTools并重新安装命令行工具


% sudo rm -rf /Library/Developer/CommandLineTools

% sudo xcode-select --install

% clang --version

Apple clang version 12.0.0 (clang-1200.0.32.27)

Target: x86_64-apple-darwin20.1.0

Thread model: posix

InstalledDir: /Library/Developer/CommandLineTools/usr/bin


查看完整回答
反对 回复 2023-08-22
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

就我而言,删除 CLT 和 LLVM 并设置刚刚编译的 XCode。


% sudo rm -rf /Library/Developer/CommandLineTools

% sudo xcode-select --switch /Applications/Xcode.app

% brew uninstall llvm # if installed via brew

% clang --version

Apple clang version 12.0.0 (clang-1200.0.32.28)

Target: x86_64-apple-darwin20.2.0

Thread model: posix

InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

gcc 和 g++ 现在编译没有任何错误。


查看完整回答
反对 回复 2023-08-22
  • 5 回答
  • 0 关注
  • 299 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信