【发布时间】:2012-06-26 19:58:54
【问题描述】:
所以这是我第一次尝试在 C++ 程序中使用 python,我在链接库时遇到了一些问题。
所以我使用带有 GNU GCC 编译器的 Code Blocks IDE,并且我有以下主程序:
#include <Python.h>
#include <iostream>
using namespace std;
int main()
{
cout<<"starting interpreter."<<endl;
Py_Initialize();
PyRun_SimpleString("print 'Im in python!'");
Py_Finalize();
return 0;
}
我的链接设置如下(在代码块 GUI 中用于编译器和调试器设置):
linker settings:
link libraries:
C:\Python27\libs\libpython27.a
search directories:
linker:
C:\Python27\libs
有什么我想念的吗?还是我做错了?
构建消息:
C:\Users\users_name\Desktop\PythonIntegratedTest\main.cpp|1|error: Python.h: No such file or directory|
C:\Users\users_name\Desktop\PythonIntegratedTest\main.cpp||In function 'int main()':|
C:\Users\users_name\Desktop\PythonIntegratedTest\main.cpp|9|error: 'Py_Initialize' was not declared in this scope|
C:\Users\users_name\Desktop\PythonIntegratedTest\main.cpp|10|error: 'PyRun_SimpleString' was not declared in this scope|
C:\Users\users_name\Desktop\PythonIntegratedTest\main.cpp|11|error: 'Py_Finalize' was not declared in this scope|
【问题讨论】:
-
您应该复制、粘贴并发布您遇到的确切错误——这很重要。
-
请在搜索目录中将 ~\libs 更改为 ~\include。
-
我试过了,同样的错误发生了:/我是否也必须更改我的链接库?
-
你确定你在正确的地方改变了它并且错误保持完全相同吗?对于 CodeBlocks,转到 设置 - 编译器和调试器 - 搜索目录 - 编译器 并将 C:\Python27\include 添加到列表中。这应该可以解决 Python.h not found 问题和其他问题。
-
@NiklasR 好的,所以我改变了它,现在我只是收到有关未定义的 Python 函数引用的错误。
标签: c++ python python-2.7 codeblocks python-2.x