由非 root 用户安装 python 包/工具 [英] Installing a python package/tool by a non root user

查看:70
本文介绍了由非 root 用户安装 python 包/工具的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

(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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆