2016-11-10 107 views
-1

将Python嵌入到我的C/C++应用程序中时,如何正确使用在WinPython-64bit-3.4.4.1根目录中找到的WinPython的python解释器,而不是在“WinPython-64bit-3.4.4.1/python-3.4.4.amd64”中找到一个级别的python解释器?Python C API使用WinPython Python解释器代替标准Python解释器

当我尝试使用在“WinPython-64bit-3.4.4.1/python-3.4.4.amd64”中找到的python解释器时,我无法成功运行我的模块。但是,当我用根目录中的python解释器运行该模块时,我能够正确运行我的模块。

我试图重新命名“WinPython翻译风波”到“蟒蛇”,然后设置Python主页:

wchar_t PythonHome[1024]; 
std::wcsncpy(PythonHome, L"C:\\Users\\jchen114\\Lasagne\\WinPython\\WinPython-64bit-3.4.4.1", 1024); 
Py_SetPythonHome(PythonHome); 
Py_Initialize(); 

运行与标准Python解释器的模块时,我得到的错误是关于

"C:\dev\MinGW\bin\g++.exe" -shared -g ... sorry, an unimplemented: 64-bit mode not compiled in 
#include <Python.h> 
^ 

这是否意味着我只需要一个64位g ++编译器?

请指教。

+0

没有语言的C/C++。只有**不同的**语言C和C++!当您问到C API时,我删除了错误的标签。如果您使用C++,请随时将标签更改为C++。 – Olaf

+0

对。但这个问题适用于两者。 – terminix00

+0

二读时,你显然使用C++编译器,所以不,它不!但是我将标签更正为C++。 – Olaf

回答

0

所以要解决,WinPython有一个g ++编译器,它使用它。它在脚本文件夹中。如果你把它放在你应该做的诀窍的道路上。