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

在macOS 14.2.1上用asdf安装Python3.12.1失败及报错求助

解决macOS Sonoma 14.2.1下asdf安装Python 3.12.1的构建失败问题

方案一:禁用gettext关联编译

第一个链接器错误源于Python构建时试图链接brew安装的gettext库,与系统locale库冲突。直接在安装时强制禁用gettext即可规避:

  1. 先恢复之前移除的gettext(避免后续文件缺失错误):
    brew install gettext
    
  2. 带编译参数执行asdf安装命令:
    ASDF_PYTHON_BUILD_EXTRA_ARGS="--disable-gettext" asdf install python 3.12.1
    

方案二:清理缓存并指定依赖路径

缓存文件或依赖路径配置混乱也会导致构建失败,按以下步骤操作:

  1. 删除上次失败的构建缓存目录:
    rm -rf /var/folders/qx/vjzng4rs2pd9w20rh3x_fr3w0000gn/T/python-build.20240129095442.33260
    
    若不确定缓存路径,直接清理asdf的Python下载缓存:
    rm -rf ~/.asdf/downloads/python
    
  2. 确保Xcode命令行工具是最新版本:
    xcode-select --install
    
  3. 重新安装Python依赖的brew包:
    brew install openssl@3 readline ncurses zlib
    
  4. 带完整依赖路径参数安装Python:
    env PATH="$(brew --prefix openssl@3)/bin:$(brew --prefix readline)/bin:$(brew --prefix ncurses)/bin:$(brew --prefix zlib)/bin:$PATH" \
    LDFLAGS="-L$(brew --prefix openssl@3)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix ncurses)/lib -L$(brew --prefix zlib)/lib" \
    CPPFLAGS="-I$(brew --prefix openssl@3)/include -I$(brew --prefix readline)/include -I$(brew --prefix ncurses)/include -I$(brew --prefix zlib)/include" \
    ASDF_PYTHON_BUILD_EXTRA_ARGS="--disable-gettext" \
    asdf install python 3.12.1
    

方案三:更新asdf-python插件

旧版本的asdf-python插件可能存在Sonoma兼容性问题,先更新插件再尝试安装:

asdf plugin update python
asdf install python 3.12.1

方案四:临时使用pyenv过渡(可选)

若以上方法均无效,可临时用pyenv完成Python安装,后续再切换回asdf:

brew install pyenv
pyenv install 3.12.1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 07:42:49