我可以在没有权限访问/usr/local等的情况下使用setuptools吗

1 投票
3 回答
2426 浏览
提问于 2025-04-15 23:04

我想使用一些软件包,比如 IPython 或 zdaemon,但是我在一个系统上(我的大学)工作,这里不允许我在 /usr/local、/usr/bin 或其他这些目录里进行操作。有没有什么办法可以解决这个问题?

3 个回答

1

另一种选择是使用虚拟环境(virtualenv)来帮助管理你的项目,如果你有这个工具的话。

首先,你可以通过下面的命令创建一个新的虚拟环境,命名为myenv:

$ virtualenv myenv

接着,激活这个虚拟环境,使用下面的命令:

$ source myenv/bin/activate

当你看到(myenv)这个提示符时,就说明你已经进入了这个虚拟环境。然后,你可以安装你需要的包,比如这样:

(myenv)$ easy_install mycoolpackage

这样安装的包会放在myenv这个子目录里。

如果你想重新激活这个虚拟环境,只需要再次运行上面的激活命令。

要退出这个虚拟环境,你可以直接关闭终端,或者输入:

(myenv)$ deactivate

$

2

使用 --install-dir 这个选项。你需要确保这个目录在 PYTHONPATH 里面。你可以参考一下这个 文档,可能会对你有帮助。

5

当然,你可以使用一个配置文件,来指定一个不同的安装目录,或者使用--install-dir这个选项。一般来说,如果你使用的是Python 2.6,Python包在你自己用户账户下的标准位置是$HOME/.local/。举个例子,纯Python的包会放在$HOME/.local/lib/python2.6/site-packages/这个地方。

如果你的setuptools版本足够新,还可以看看--prefix这个选项。

撰写回答