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

Mac下通过Pyenv安装Python 3.9.16失败求助

解决pyenv安装Python 3.9.16时的SIGABRT错误

错误信息:

Traceback (most recent call last):
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/ensurepip/__main__.py", line 5, in <module>
sys.exit(ensurepip._main())
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/ensurepip/__init__.py", line 211, in _main
return _bootstrap(
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/ensurepip/__init__.py", line 130, in _bootstrap
return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/ensurepip/__init__.py", line 39, in _run_pip
return subprocess.run(cmd, check=True).returncode
File "/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/Lib/subprocess.py", line 528, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/python-build.20230508142345.28952/Python-3.9.16/python.exe', '-c', '\nimport runpy\nimport sys\nsys.path = [\'/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/tmp45llfbar/setuptools-58.1.0-py3-none-any.whl\', \'/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/tmp45llfbar/pip-22.0.4-py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/tmp45llfbar\', \'--root\', \'/\', \'--upgrade\', \'setuptools\', \'pip\']\nrunpy.run_module(&quot;pip&quot;, run_name=&quot;__main__&quot;, alter_sys=True)\n']' died with <Signals.SIGABRT: 6>.
make: *** [install] Error 1

解决方案:

该错误是Python安装流程中内置的ensurepip工具在部署pip/setuptools时触发SIGABRT信号导致的,常见于macOS系统,可通过以下方式解决:

  • 更新pyenv及python-build组件,确保使用最新安装脚本:
pyenv update
  • 安装Python编译所需的系统依赖(以Homebrew为例):
brew install openssl readline sqlite3 xz zlib
  • 跳过内置ensurepip流程,手动安装pip:

    1. 安装Python时添加跳过参数:
    PYTHON_CONFIGURE_OPTS="--without-ensurepip" pyenv install 3.9.16
    
    1. 切换至刚安装的版本,手动安装pip:
    pyenv global 3.9.16
    curl https://bootstrap.pypa.io/get-pip.py | python
    
  • 备选方案:指定编译时的头文件与库路径,确保Python编译完整:

CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix readline)/include -I$(brew --prefix zlib)/include -I$(brew --prefix sqlite3)/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix sqlite3)/lib" pyenv install 3.9.16

内容的提问来源于stack exchange,提问作者Alberto Sanmartin Martinez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 08:20:09