为什么我的sys.prefix被设置为'/ usr'?

时间:2017-11-06 20:21:42

标签: python install sys

我正在尝试在我没有管理员权限的系统上从源代码安装python2.7。 /usr/bin中安装了一个版本,但我希望我的安装完全独立于此。我也用新的gcc编译器测试构建,所以我想避免使用像anaconda这样的预构建软件包。

我下载了python源并运行了以下

./configure --prefix=$INSTALL_DIR --exec-prefix=$INSTALL_DIR --enable-shared --enable-optimizations --enable-unicode=ucs4
make
make install

其中$INSTALL_DIR是我希望安装的地方。

然后,当我运行构建的python可执行文件

时,配置和构建运行没有错误
$INSTALL_DIR/bin/python

并检查它仍然使用/usr作为前缀的搜索路径:

Python 2.7.13 (default, May 31 2017, 17:58:17) 
[GCC 7.1.1 20170503 (Red Hat 7.1.1-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys 
>>> sys.prefix
'/usr'

这意味着我找不到$INSTALL_DIR中安装的模块。如果模块已安装在pip install XXX空间中,则运行/usr也不会执行任何操作。

我想避免使用$PYTHONPATH$LD_LIBRARY_PATH这样的内容,那么有没有办法在sys.prefixsys.path指向$INSTALL_DIR的地方进行设置并且对系统级安装一无所知?

感谢您的帮助。

0 个答案:

没有答案