由非 root 用户安装 python 包/工具 [英] Installing a python package/tool by a non root user
问题描述
(1) 我必须安装一个 python 包 (HTSeq) 但我没有 root 权限.
该包需要 python 2.4 或最新版本.我们的集群上有 python 2.3.
因此我在我的一个本地目录上安装了 python 2.7使用
./configure --prefix=/home/amit/tools/localpython制作进行安装
(2) 该包还需要 numpy :所以我也使用以下方法将其安装在本地目录中:
/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localnumpy
完成
<预><代码>>>>sys.path.append("/home/amit/tools/localnumpy/lib/")(3) 我下载了 HTSeq 的 tar 文件(我想下载)并运行
/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localhtseq
它抛出以下错误:
无法导入setuptools",回到'distutils'.HTSeq 的安装脚本:无法导入numpy".请安装 numpy,然后再次尝试安装 HTSeq.
请给我一些关于如何克服它的提示
提前致谢
Setuptools 是安装该软件包所需的另一个要求.
一种选择是使用 virtualenv 创建一个包含的 python 环境.这可以在任何地方制作,并且归创建它的用户所有.
在没有管理员权限的情况下安装 virtualenv(来自这个答案):
下载最新版virtualenv的tar.gz.打开包装.你甚至不需要安装它,只需运行 virtualenv.py,例如:
wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.7.1.2.tar.gztar -xzf virtualenv-1.7.1.2.tar.gz/home/amit/tools/localpython/bin/python2.7 virtualenv-1.7.1.2/virtualenv.py envenv/bin/pip 安装 HTSeqenv/bin/pip 安装 numpy
现在在虚拟环境中使用 python 二进制文件运行你的脚本:
env/bin/python myscript.py
(1) I have to install one python package (HTSeq) but i dont have root privileges.
The package need python 2.4 or latest version. We have python 2.3 on our cluster.
Thus I installed python 2.7 on my one local directory using
./configure --prefix=/home/amit/tools/localpython
make
make install
(2) The package also requires numpy : so I also installed it on my local directory using:
/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localnumpy
and done
>>> sys.path.append("/home/amit/tools/localnumpy/lib/")
(3) I downloaded the tar file of HTSeq (Which i want to download) and run
/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localhtseq
it is throwing following error:
Could not import 'setuptools',
falling back to 'distutils'.
Setup script for HTSeq: Failed to import 'numpy'.
Please install numpy and then try again to install HTSeq.
Kindly provide me some hint on how to get over it
Thanks in advance
Setuptools is another requirement which you need to install that package.
One option is to use virtualenv to create a contained python environment. This can be made everywhere and is owned by the user who creates it.
To install virtualenv without admin rights (from this answer):
Download tar.gz of the latest version of virtualenv. Unpack it. You don't even need to install it, just run virtualenv.py, for example:
wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.7.1.2.tar.gz
tar -xzf virtualenv-1.7.1.2.tar.gz
/home/amit/tools/localpython/bin/python2.7 virtualenv-1.7.1.2/virtualenv.py env
env/bin/pip install HTSeq
env/bin/pip install numpy
Now run your script using the python binary in the virtual environment:
env/bin/python myscript.py
这篇关于由非 root 用户安装 python 包/工具的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!