我正在Linux上使用Eclipse开发C应用程序,而我使用的构建系统使用了make
和python
。我有一个由pyenv
安装和管理的自定义virtualenv,如果我用pyenv shell myvenv
预先选择了virtualenv,则在命令行上可以正常工作。
但是,当我从Eclipse内部构建(通过“现有的makefile”)时,我希望Eclipse利用此virtualenv。当前,它运行我的Makefile,但在/usr/bin/python
中使用系统python,该系统缺少构建系统所需的所有软件包。
我不清楚如何配置Eclipse以使用自定义Python解释器,例如我的virtualenv中的解释器。我听说过要设置PYTHONPATH
,但是这似乎是为了查找站点程序包,而不是解释程序本身。我的virtualenv是基于python 3.7的,而我的系统python是2.7的,因此单独设置此设置可能无法正常工作。
我没有使用PyDev(这是一个C项目,而不是Python项目),因此Eclipse中没有对Python的明确支持。如果可以的话,我宁愿不安装PyDev。
我注意到pyenv在激活时将其plugins
,shims
和bin
目录添加到PATH。我可以将它们显式添加到Eclipse中的PATH中,以便Eclipse使用pyenv查找解释器。但是,我宁愿直接指向特定的virtualenv,而不是使用pyenv机制来查找当前的virtualenv。
答案 0 :(得分:0)
对我来说,以下步骤有效(mac os 10.12,eclipse光子版本,带有pydev插件)
在底部的库部分中,您应该能够从虚拟环境中查看站点包
额外提示-在我的Mac OS中,虚拟环境以.pyenv开头,因为它是一个隐藏目录,所以我无法选择此目录,而且我不知道如何在eclipse文件浏览器中查看该隐藏目录。因此,我创建了一个到隐藏目录(.pyenv)的软链接(名称中没有任何。),然后能够选择该软链接
答案 1 :(得分:0)
键入CMD + SHIFT +。将在任何Mac finder对话框中显示以点开头的点文件和目录...
答案 2 :(得分:0)
我遇到了同样的麻烦,经过一番挖掘,有两种解决方案;项目范围和工作区范围。我更喜欢整个项目,因为它将保存在git存储库中,而下一个人不必拉头发。
对于整个项目,请在“项目属性> C / C ++构建>环境> PATH”的开头添加/Users/${USER}/.pyenv/shims:
。
我无法完全弄清楚另一种方法(主要是因为我对另一种方法感到满意),但是应该可以修改“ Eclipse首选项> C / C ++> Build> Environment”。您应该更改单选按钮并添加PATH变量。