在没有Sudo/Root权限的情况下安装Python包,但依赖使用系统库文件夹
我的问题跟如何在没有管理员权限的情况下安装Python包类似,但我想知道在安装新包的时候,是否需要把所有依赖项都安装到本地,还是可以让安装程序在有的情况下使用全局安装的包?
我在一台远程计算机(unix机器)上工作,那里我没有sudo或root权限。远程计算机上已经安装了Python和一些科学库,比如Numpy和Scipy。但是我在安装一个新的Python包时遇到了麻烦。
当我运行
python setup.py install
时就出现了问题,因为我无法访问lib文件夹。我知道我可以使用命令
python setup.py --user
在本地安装它们,但这又带来了另一个问题。它会把包安装到我主目录下的/.local文件夹中,但是当这个包有依赖项已经在根文件夹中全局安装时(像我这种情况,numpy和scipy已经全局安装),它不会注意到这些依赖项,而是直接在/.local中安装它们的新副本。
我该如何在本地安装一个新包,同时告诉setup.py去系统根目录的lib文件夹中查找依赖库和包呢?
1 个回答
4
virtualenv 是为你准备的
virtualenv --system-site-packages
这可以让你使用全局的 Python 包。
你自己的项目就不需要单独安装 numpy 或 scipy 了。