我正在使用一台运行 CentOS 的 linux 机器。我没有完整的 sudo 权限,并且机器上已经安装了多个版本的 python,整个事情有点乱,像 numpy 这样的东西不起作用,我需要安装依赖它的模块。
我想知道是否可以将python(希望是R)安装到我自己的主目录或其他东西中,然后将我需要的模块安装到该目录中并从那里运行我需要的东西?
谢谢
尝试使用 virtualenv。当然,这假设您的系统已经安装了 virtualenv。
https://pypi.python.org/pypi/virtualenv
基本用法:
virtualenv venv
这会在您当前的文件夹中创建一个名为“venv”的目录。它放入适当的python
二进制pip
文件。
进入虚拟环境:
. venv/bin/activate
或等效地:
source venv/bin/activate
这是关键的一步。从那时起,使用安装的任何包pip
都将位于我们上面创建的 virtualenv 文件夹的本地。请记住在安装软件包和运行程序之前执行上述步骤。运行python
也将使用python
来自 virtualenv 的。
您应该会看到如下内容:
(venv)[username@host]$
在你的外壳上。
使用 pip 安装软件包,如下所示:
pip install packagename
这将为我们在第一步中创建的 virtualenv 安装包。
pip
使用requirements.txt
文件来指定 python 程序所需的包。如果你有一个requirements.txt
文件,你可以使用:
pip install -r requirements.txt
安装该文件中指定的软件包。
运行你的 python 程序:
python programName
或使用您需要的相关命令。根据我迄今为止有限的经验,我已经gunicorn
为 Web 应用程序运行过。这将使用python
我们的 virtualenv 中的和相关的库。
要停用 virtualenv,请使用:
deactivate
希望有帮助!
创建一个安装您自己的软件的目录:
mkdir -p ~/sw/src
cd ~/sw/src
将 Python 源下载并解压到此目录中。将其配置为安装到~/sw
中,然后编译(确保所有必需的标头都可用,如果您想使用 HTTPS 打开 HTTPS url,尤其是那些用于 SSL 的标头urllib2
):
./configure --prefix=$HOME/sw
make
make install
最后,将您的设置PATH
为包含$HOME/sw/bin
在.bashrc
(或类似的 shell 启动文件)中。现在运行python
。
R 应该类似地工作。
只是为了在以前的答案中添加一些额外的信息。
Python 3 有自己的轻量级虚拟环境版本。因此,如果您使用 Python 3(由您的系统提供或自行构建),您可以运行:
python -m venv my_env
my_env
这将在目录中创建隔离环境。
跑去python -m venv --help
寻求帮助。
如果您的系统安装了 gcc,您可能会考虑从源代码构建,如此处所述:http: //hg.python.org/cpython/file/2.7/README for Python 2.7 或此处: http ://hg.python.org/用于 Python 3.3 的cpython/file/3.3/README
通过这种方式,您将确保进行干净的安装。即使使用私有安装,使用 virtualenv 仍然是一个好主意。
我不是专家,但我希望它可以帮助某人。
我已经按照原样执行了这些步骤,并且能够为一个用户安装 python。
http://thelazylog.com/install-python-as-local-user-on-linux/