Python 3.9.12构建失败-生成posix变量失败

ddrv8njm  于 2023-02-06  发布在  Python
关注(0)|答案(1)|浏览(770)

python新手,尝试通过pyenv安装3.9.12,得到以下错误:

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

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

Inspect or clean up the working tree at /var/folders/dz/3d8j_wx508jgkxqzjrfwhbt40000gp/T/python-build.20230125165700.93087
Results logged to /var/folders/dz/3d8j_wx508jgkxqzjrfwhbt40000gp/T/python-build.20230125165700.93087.log

Last 10 log lines:
DYLD_LIBRARY_PATH=/var/folders/dz/3d8j_wx508jgkxqzjrfwhbt40000gp/T/python-build.20230125165700.93087/Python-3.9.12 ./python.exe -E -S -m sysconfig --generate-posix-vars ;\
    if test $? -ne 0 ; then \
        echo "generate-posix-vars failed" ; \
        rm -f ./pybuilddir.txt ; \
        exit 1 ; \
    fi
dyld[4402]: symbol not found in flat namespace (_libintl_bindtextdomain)
/bin/sh: line 1:  4402 Abort trap: 6           DYLD_LIBRARY_PATH=/var/folders/dz/3d8j_wx508jgkxqzjrfwhbt40000gp/T/python-build.20230125165700.93087/Python-3.9.12 ./python.exe -E -S -m sysconfig --generate-posix-vars
generate-posix-vars failed
make: *** [pybuilddir.txt] Error 1

我在M1上不知道这有没有关系。

lf5gs5x2

lf5gs5x21#

我尝试在M1 Mac上安装3.9.16时遇到同样的错误。我尝试重新安装xcode-select和其他我能在网上找到的东西。没有任何效果。我发现这个issue建议使用Rosetta构建,但也不起作用。
编辑:我修复了我的安装,但我真的很怀疑它对其他人是否有用。我刚刚安装了用于神经成像的FreeSurfer工具包,结果它向PATH添加了许多目录。删除用于安装的PATH的FreeSurfer特定部分解决了这个问题。
例如,在终端中执行以下命令:

$ echo PATH
/Applications/freesurfer/bin:/other/freesurfer/or/fsl/dirs:my/path

$ PATH=my/path:without/freesurfer/tings pyenv install 3.9.16

当然,需要将pyenv命令之前的PATH替换为与其计算机相关的内容。
这个解决方案的细节对很多人来说可能没有用,但也许其他程序也会严重干扰PATH,并可能导致类似的错误。

相关问题