Enthought python不识别系统模块

时间:2013-01-19 13:41:17

标签: python python-module enthought

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

3 个答案:

答案 0 :(得分:4)

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

目前,在EPD中安装python包的推荐方法是使用enpkg工具。尝试enpkg -s <packagename>查看您所需的包是否在Enthought的存储库中。如果您还没有,则应通过运行enpkg enstaller来升级enpkg,并通过运行enpkg --userpass输入您的EPD凭据。然后,您应该可以使用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安装软件包,则应首先使用备用方法(Using non-EPD package installers such as pip)删除您安装的版本。

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

答案 1 :(得分:3)

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

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

2)在某处写下来

3)如果您点击安装,请输入:

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

由Ian Bicking撰写Install a Python package into a different directory using pip?

答案 2 :(得分:2)

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

$ enpkg --version
enstaller version: 4.6.3

$ enpkg --env