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

M1 Pro Mac(Sonoma系统)pyenv安装Python3.9.9失败求助

在M1 Pro芯片的MacOS Sonoma 14.4上用pyenv安装Python 3.9.9失败的解决办法

环境信息

  • 设备:搭载M1 Pro芯片的Mac
  • 系统:MacOS Sonoma(OS X 14.4)
  • 工具:通过Homebrew安装的pyenv

报错详情

执行pyenv install 3.9.9后安装失败,核心报错如下:

pyenv install 3.9.9
python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
Downloading Python-3.9.9.tar.xz...
-> https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tar.xz
Installing Python-3.9.9...
python-build: use tcl-tk from homebrew
python-build: use readline from homebrew
python-build: use ncurses from homebrew
python-build: use zlib from xcode sdk

BUILD FAILED (OS X 14.4 using python-build 20180424)

Inspect or clean up the working tree at /var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044
Results logged to /var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044.log

Last 10 log lines:
  File "/private/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044/Python-3.9.9/Lib/ensurepip/__init__.py", line 206, in _main
    return _bootstrap(
  File "/private/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044/Python-3.9.9/Lib/ensurepip/__init__.py", line 125, in _bootstrap
    return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
  File "/private/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044/Python-3.9.9/Lib/ensurepip/__init__.py", line 34, in _run_pip
    return subprocess.run([sys.executable, "-c", code], check=True).returncode
  File "/private/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044/Python-3.9.9/Lib/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '[\'/private/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/python-build.20240517153702.30044/Python-3.9.9/python.exe\', \'-c\', \'\nimport runpy\nimport sys\nsys.path = [\'/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/tmp8thxua6f/setuptools-58.1.0-py3-none-any.whl\', \'/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/tmp8thxua6f/pip-21.2.4-py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/var/folders/gb/qw4m3z9x49n7d53pl5j_t_s40000gp/T/tmp8thxua6f\', \'--root\', \'/\', \'--upgrade\', \'setuptools\', \'pip\']\nrunpy.run_module(\"pip\", run_name=\"__main__\", alter_sys=True)\n\']' died with <Signals.SIGABRT: 6>.
make: *** [install] Error 1

解决办法

1. 跳过ensurepip安装

安装时跳过自带的pip安装流程,之后手动安装pip:

pyenv install 3.9.9 --without-pip

安装完成后切换到该版本,从Python官方渠道下载get-pip.py文件,执行以下命令安装pip:

pyenv local 3.9.9
python get-pip.py

2. 更新pyenv及依赖库

先更新pyenv到最新版本,确保编译工具是最新的:

brew update && brew upgrade pyenv

安装或更新编译所需的依赖:

brew install openssl@1.1 readline sqlite3 xz zlib tcl-tk

重新执行安装命令:

pyenv install 3.9.9

3. 指定编译参数

设置环境变量强制使用Homebrew提供的依赖,避免与系统SDK冲突:

CFLAGS="-I$(brew --prefix openssl@1.1)/include -I$(brew --prefix readline)/include -I$(brew --prefix sqlite3)/include" \
LDFLAGS="-L$(brew --prefix openssl@1.1)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix sqlite3)/lib" \
pyenv install 3.9.9

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 03:20:56