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

M1 Pro芯片MacBook Pro使用pyenv安装Python3.11.3失败求助

解决M1 Pro MacBook Pro上pyenv安装Python 3.11.3失败的问题

问题详情

在搭载M1 Pro芯片的MacBook Pro(系统版本:macOS 13.3.1 (a))上,使用pyenv 2.3.18执行pyenv install 3.11.3时安装失败,核心报错为subprocess.CalledProcessError,原因是内置的ensurepip工具在安装setuptools和pip的过程中返回非零状态码。已尝试重装Xcode Command Line Tools,但问题未解决。

完整报错输出:

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

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

Inspect or clean up the working tree at /var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670
Results logged to /var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670.log

Last 10 log lines:
  File "/private/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670/Python-3.11.3/Lib/ensurepip/__init__.py", line 202, in _bootstrap
    return _run_pip([*args, *_PACKAGE_NAMES], additional_paths)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/private/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670/Python-3.11.3/Lib/ensurepip/__init__.py", line 103, in _run_pip
    return subprocess.run(cmd, check=True).returncode
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/private/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670/Python-3.11.3/Lib/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/private/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/python-build.20230602131834.2670/Python-3.11.3/python.exe', '-W', 'ignore::DeprecationWarning', '-c', '\nimport runpy\nimport sys\nsys.path = [\'/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/tmp14w0pyb5/setuptools-65.5.0-py3-none-any.whl\', \'/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/tmp14w0pyb5/pip-22.3.1-py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/var/folders/1p/dz3r2rz55kd60_t8sgslkvvh0000gn/T/tmp14w0pyb5\', \'--root\', \'/\', \'--upgrade\', \'setuptools\', \'pip\']\nrunpy.run_module("pip", run_name="__main__", alter_sys=True)\n']' returned non-zero exit status 1.
make: *** [install] Error 1

已尝试的无效操作:

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

可行解决方案

该问题在M系列Apple Silicon Mac上较为普遍,主要源于Python编译时的架构兼容或依赖库路径问题,可尝试以下方法:

方法1:跳过内置ensurepip安装

安装时跳过自带的ensurepip步骤,之后手动安装pip:

PYTHON_CONFIGURE_OPTS="--without-ensurepip" pyenv install 3.11.3

安装完成后,从pypa官方获取get-pip.py脚本,用该Python版本执行安装:

~/.pyenv/versions/3.11.3/bin/python get-pip.py
rm get-pip.py

方法2:指定编译架构与依赖库路径

明确指定arm64架构及openssl依赖路径(需确保homebrew已安装openssl@1.1):

CFLAGS="-I$(brew --prefix openssl@1.1)/include" \
LDFLAGS="-L$(brew --prefix openssl@1.1)/lib" \
PYTHON_CONFIGURE_OPTS="--enable-shared" \
pyenv install 3.11.3

方法3:更新pyenv及python-build

当前使用的python-build版本为20180424,版本过于老旧,先更新pyenv:

pyenv update

若通过homebrew安装pyenv,也可执行以下命令更新:

brew update && brew upgrade pyenv

更新完成后重新尝试安装Python 3.11.3。

方法4:清理pyenv缓存

可能下载的Python源码包损坏,清理缓存后重新安装:

rm -rf ~/.pyenv/cache/*
pyenv install 3.11.3

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 03:05:21