【问题标题】:I want my already created virtualenv to have access to system packages我希望我已经创建的 virtualenv 能够访问系统包
【发布时间】:2015-07-08 00:17:37
【问题描述】:

我最近在 ubuntu 14.04 上安装了 opencv3。我遵循的教程出于某种原因使用了 virtualenv。现在我想将 opencv 从虚拟环境移动到我的全局环境。原因是我似乎无法使用安装在我的全球环境中的软件包,这让我很紧张。那我该怎么做呢?

【问题讨论】:

    标签: python opencv virtualenv


    【解决方案1】:

    我不确定你的问题是否正确,但可能你的 virtualenv 是在没有指定选项 --system-site-packages 的情况下创建的,它使你的 virtualenv 可以访问你在系统上安装的包。

    如果您在创建教程 virtualenv 时运行 virtualenv --system-site-packages tutorial_venv 而不仅仅是 virtualenv tutorial_venv,您可能会没事。

    仅供参考,使用仅具有本地依赖项的 virtualenv 是一种相当普遍的做法,其中:

    • 在生产场景中为您提供隔离和重现性
    • 使没有权限在系统范围内安装软件包的用户可以运行和开发 python 应用程序

    最后一个好处可能是您的教程建议使用基于 virtualenv 的方法的原因。

    【讨论】:

    • 这有点道理。现在,当我运行 virtualenv --system-site-packages cv(cv 是 virtualenv 的名称)时,我在当前工作目录中创建了一个名为 cv 的新文件夹,而 cv 仍然无法访问我的系统包。现在我该怎么做? .. 对不起,如果我对这个超级菜鸟
    • 你记得激活 virtualenv 吗? (source cv/bin/activate) 你怎么知道它无法访问它们?你能说得更准确点吗?
    • 这就是我所做的。 workon cv.(我收到一条以'Usage: source deactivate'开头的消息)-->源激活-->python-->导入skimage-->没有名为skimage的模块
    • 啊,所以你使用的是 virtualenvwrapper,你可能想在你的问题上指定它。并使用您收到的错误消息进行更新。不幸的是,我不熟悉 virtualenvwrapper。我很快找到了stackoverflow.com/questions/19869059/…,但我不确定它是否相关。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-26
    • 1970-01-01
    • 1970-01-01
    • 2015-12-23
    • 2023-03-11
    • 1970-01-01
    相关资源
    最近更新 更多