0

我已经在 Ubuntu 12.04 虚拟机上安装了 Enthought Python Distribution(即 python 2.7),如果它能够识别通过 synaptic 包管理器导入的模块,那将非常有用。目前,这些只能被系统提供的python安装识别(很容易理解)。由于两个 python 都是 2.7,是否可以让我的 EPD 安装识别系统模块?谢谢。

4

3 回答 3

4

不,不支持将突触安装模块与 EPD 一起使用。当然,您可以尝试将特定的包添加到您的 PYTHONPATH 中,但这可能会产生冲突,尤其是对于包含 C 扩展的模块,这些模块可能链接到稍微不同的 Python 版本。

目前,在 EPD 中安装 python 包的推荐方法是使用该enpkg工具。尝试enpkg -s <packagename>查看您想要的包是否在 Enthought 的存储库中。如果您还没有,您应该通过运行升级 enpkg 本身enpkg enstaller并通过运行输入您的 EPD 凭据enpkg --userpass。然后您应该能够使用enpkg <packagename> (Using enpkg to update EPD packages)安装支持的软件包。

如果您要查找的软件包不在 Enthought 的存储库中,您可以enpkg pip使用该工具安装 pip 并在 EPD 中安装软件包。

或者,您可以下载所需包的源代码并使用 安装它python setup.py install,假设包有 setup.py。

注意:如果您在不使用 enpkg 的情况下将软件包安装到 EPD 中,则应确保首先删除该软件包的 EPD 版本(如果存在)(enpkg --remove <packagename>)。如果您稍后选择使用 enpkg 安装软件包,则应首先删除您使用替代方法安装的版本(使用非 EPD 软件包安装程序,例如 pip)

Enthought 还有一个即将推出的 GUI 包管理器,目前处于测试阶段。

于 2013-01-21T18:13:57.407 回答
3

有同样的问题。Enthought 发行版使用完全不同的 python 路径和库前缀,而不是您运行的磨机系统发行版。因此,如果您使用 pip,pip 将安装在您的系统路径上,而不是您的 EPD 路径上。解决方案:

1) 获取您的 EPD 前缀:enpkg --path

2)在某处写下来

3)如果你 pip install 然后输入:

pip install --install-option="--prefix=$PREFIX_PATH" package_name

正如 Ian Bicking 在使用 pip 将 Python 包安装到不同的目录中所写的那样?.

于 2013-01-19T18:47:51.357 回答
2

以前的答案可能已经过时了。在版本 4.6.3 上使用 enpkg --env 获取前缀

$ enpkg --version
enstaller version: 4.6.3

$ enpkg --env
于 2014-03-27T22:47:38.030 回答