【问题标题】:Enthought Canopy can't resolve python-openidEnthought Canopy 无法解析 python-openid
【发布时间】:2014-02-03 20:40:03
【问题描述】:

我一直在尝试从 Enthought Canopy 的包管理器安装 Paste 1.7.5.1-1,但是我收到错误消息:Canopy 似乎无法解析 python-openid:

认为 python-openid 完全从我的系统中丢失(它也没有列在 Canopy 的“可用包”列表中),我跟着these directions 并使用 pip 安装了 python-openid。但是,该包似乎已经存在并且进一步尝试安装粘贴失败。

非常感谢您对此问题的一些帮助。

【问题讨论】:

    标签: enthought


    【解决方案1】:

    (Enthought Support here)Paste 包不是官方 Canopy 存储库的一部分,而是不受支持的“社区”,因此从这些包安装时可能会出现一些依赖性问题。使用以下步骤,我能够安装 Paste 包,甚至运行了一些测试:

    • 在 Canopy 命令提示符下,运行 pip install python_openid(注意没有 -U 并且模块使用下划线,而不是 StackOverflow 的屏幕截图中的破折号)。
    • 安装后,使用命令行实用程序 enpkg 强制安装 paste 而不解析依赖关系。来自 Canopy 命令提示符:enpkg --no-deps Paste

    那你就可以测试一下了……

    在 IPython 中(从命令行或 Canopy Python 窗格),试试这个简单的程序 found in their docs

    def app(environ, start_response):
        start_response('200 OK', [('content-type', 'text/html')])
        return ['Hello world!']
    
    if __name__ == '__main__':
        from paste import httpserver
        httpserver.serve(app, host='127.0.0.1', port='8080')
    

    希望这会有所帮助。

    【讨论】:

    • 感谢您的回复!我能够按照您的步骤安装粘贴包。我也能够毫无错误地运行脚本。但是,当我尝试安装其他依赖于 Paste 的包时,Canopy 包管理器仍然给我同样的错误。换句话说,一切正常,但包管理器似乎很困惑。
    • 你是对的,包管理器很困惑。它使用自己的包安装实用程序(enstaller/enpkg)来跟踪版本和依赖项。通过使用pip,您已经走出了它的领域。我们建议在使用pip 安装包时,如果之前由enpkg 或包管理器安装,您首先需要卸载该包。在另一个方向上工作也是如此,如果之前通过 pip 尝试使用包管理器完成,则卸载。请记住,这是实现同一目标的两种机制,但需要谨慎管理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-01
    • 1970-01-01
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-31
    相关资源
    最近更新 更多