【问题标题】:additional python installed upon installing matplotlib with macports使用 macports 安装 matplotlib 时安装的附加 python
【发布时间】:2011-03-13 15:15:03
【问题描述】:

我在 mac os 10.6 上安装 matplotlib 时遇到问题,所以我使用了 macports 并安装了它需要的所有依赖项,这很棒,但在它之上还有一个新的 python 版本。现在我有两个 python 版本,这让我很困扰。 matplotlib 在 macport python 上运行良好,我的其余部分使用默认 python。 将两者集成为一个的最佳解决方案是什么,以及将哪一个用作默认 python?

我尝试将所有包从我的默认 python /defaultPython/../site-packages 复制到 /opt/../site-packages。同样的事情是在 macports python 的 PYTHONPATH 上添加 /defaultPython/../site-packages。 有些确实工作得很好,但不是全部。

例如在

import scipy.sparse

我收到了这个错误

import _csr
ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scipy/sparse/sparsetools/_csr.so, 2): no suitable image found.  Did find:
    /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scipy/sparse/sparsetools/_csr.so: no matching architecture in universal wrapper

对此有什么想法或肮脏的解决方法吗?

非常感谢!

【问题讨论】:

    标签: python matplotlib macports


    【解决方案1】:

    您永远不应该删除或更改 Apple 为 Mac OS X 提供的 Python 系统——这是他们测试其操作系统的特定版本,您真的不想破坏它 .

    如果你想使用方便的 macports 安装扩展,你需要 Python 的 macports 版本,所以你也不能删除它。

    没有真正的理由担心,因为您的系统上有多个 Python 版本(我通常至少有六个版本;-)。

    只需将/opt/...(macports 保存其 bin 目录的位置)放在您的 PATH 环境变量的开头(例如在 .bashrc 中),并确保您使用 macports Python 安装您需要的任何扩展。

    【讨论】:

    • 感谢您的快速回复。 /opt/... 已添加到我的 PATH 中。我希望能够调用一个脚本,比如 python test.py,它从两个脚本中导入包。我的 matplotlib 与 macports 一起安装,而我的其余软件包则使用我的默认版本安装。任何想法如何做到这一点?
    • @Oliver,您想要做的事情是不可能的:您只需在 same 版本的 Python 上安装给定脚本中直接或间接使用的所有包,然后然后使用该版本运行脚本。
    • 谢谢亚历克斯。我编辑了这个问题。也许您知道解决此问题的方法?
    • 复制是不够的:必须为特定的 Python 版本安装包含任何机器代码的包!我再说一遍:你必须为你选择的任何 Python 版本重做所需的安装,只是复制东西。
    • .dmg 包怎么样?我想安装 scipy dmg,但无法更改目录,或者如何为 macports python 制作它。亚历克斯,感谢您的帮助,我是 Mac 新手,除了上个月我还在 iMac 上工作,安装 matplotlib 没有问题,但现在我在使用 mac book pro,应该是一样的,但我遇到了问题,不记得我做了什么不同的事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2013-03-17
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多