【问题标题】:pyenv + virtualenv not finding delugepyenv + virtualenv 找不到洪水
【发布时间】:2015-04-21 15:18:02
【问题描述】:

我正在尝试使用带有 PYENV 的 virtualenv 构建中的 deluge。
为此,我使用 pyenv 构建了一个 python 2.7.9。
我已将 pyenv global 设置为 2.7.9,然后安装了 deluge 包:

apt-get install deluded deluge-console

一切都很好,但是当我尝试这样做时:

导入洪水

它给出 ImportError。

2.7.9 环境中的点子冻结正确显示 deluge 包:

spadazz@Deluger:~/.pyenv/versions/2.7.9$ pip freeze
apt-xapian-index==0.44
chardet==2.0.1
command-not-found==0.2.44
deluge==1.3.11

用 dpkg -l 对 ubuntu 安装的 deluge 软件包进行检查,我可以看到 deluge python 软件包可以在 /usr/lib/python2.7/dist-packages 找到,所以将此路径添加到 python sys.path ,允许我手动导入包。

我的问题是这不能是手动的,而且 deluge 包不是我的程序请求的,而是来自 flexget 包,它在这个配置中运行顺利。

我在 pyenv 方面没有经验,我找不到在 pyenv virtualenv 下设置 PYTHON_PATH 的简单方法,或者任何其他允许我在 virtualenv 下调用系统 python 中的 deluge 包的解决方法。

有什么建议吗?

TIA 恩里科

  • 从 Ubuntu Server 12.04 运行
  • pyenv 20150326-483-g10d5d9a

【问题讨论】:

  • 您的 pip 安装似乎可以访问您使用的 Python 版本无法访问的某些包。如果你这样做pip freeze -l,你会得到什么?
  • 抱歉,在这几分钟内,我更改了原始配置。通过将 python 2.7.9 符号链接到站点包中,我设法让 python 2.7.9 看到洪水。它现在可以工作,但并不理想。如果 deluge 可以作为 pip 包使用,那么这一切都没有必要了。
  • 这就是你要找的洪水吗? pypi.python.org/pypi/deluge-client/1.0.2 如果是,您可以在您的 venv 中执行 pip install deluge-client
  • 是的,我看到了,但它是一个不同的包。我不认为是这样,但我可以试试。
  • 不幸的是,它不是同一个包。 Flexget 期望找到“deluge”,而不是“deluge-client”。是否可以在本地重新打包系统 dist 中找到的 deluge 包以在 virtualenv 中使用它?

标签: python virtualenv pyenv


【解决方案1】:

当你 apt-get install deluged 我相信时,Python 模块 deluge 已安装到你的系统 python 中(虽然我可能弄错了)。

有点糟糕,这个 Python 模块 deluge 不能通过 pip 使用,但你应该可以使用以下命令将它安装到你的 virtualenv 中:

首先,激活您选择的 virtualenv,然后运行

mkdir ~/my_lovely_directory && cd ~/my_lovely_directory
git clone git://deluge-torrent.org/deluge.git
cd deluge
git checkout -b 1.3-stable origin/1.3-stable
python setup.py build
python setup.py install

注意:此时编写 Python 模块 deluge 的版本为 1.3.13,如果在阅读时它是 ~1.4 或更高,您可能想要检查上面的不同分支,请参阅带有 git branch -a 的分支列表。

当在您选择的 virtualenv 中运行 pip list 时,您现在应该会看到一个名为 deluge (1.3.13.dev0) 的包。

如果一切看起来都不错,你可以清理一下

cd ~/ && rm -rf ~/my_lovely_directory

来源:

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    • 2015-07-09
    相关资源
    最近更新 更多