gpt4 book ai didi

python - 在已经安装了 Python 2.7 的系统上从源代码编译 Python 2.7.3

转载 作者:太空狗 更新时间:2023-10-29 20:38:12 32 4
gpt4 key购买 nike

我希望从源代码编译 Python 2.7.3。操作系统为OpenSUSE 11.4 x86_64,已经提供了Python 2.7。我想为最新的安全补丁使用 2.7.3,但它是一个共享系统,所以我无法修改系统 Python 解释器。

我使用 ./configure --prefix=/opt/python --enable-shared 进行编译。没有配置错误,所以我 make。再次没有错误。我做了一个 make install(我认为我不需要 make altinstall,因为 /opt/python 中的这个安装前缀不在尚未使用)。

当我尝试运行新的二进制文件 /opt/python/bin/python 时,Python 宣布其版本为 2.7,而不是 2.7.3。我发现纠正此问题的唯一方法是移动系统的 /usr/lib64/libpython2.7.so.1.0,并将其符号链接(symbolic link)到 /opt/python/lib/python/libpython2.7.so.1.0。这有效,Python 宣布它是 2.7.3,但这会破坏系统 Python。

无论如何我可以让两者共存,例如通过让 /opt/python 使用它自己的 libpython?除了在运行时提供 LD_LIBRARY_PATH 之外。有编译时解决方案吗?谢谢。

最佳答案

为避免每次启动 Python 时都必须使用 LD_LIBRARY_PATH 指定运行时库路径,您可以在构建时使用 -rpath 链接器选项指定它:

./configure --enable-shared --prefix=/opt/python \
LDFLAGS=-Wl,-rpath=/opt/python/lib

关于python - 在已经安装了 Python 2.7 的系统上从源代码编译 Python 2.7.3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12553057/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com