继上一篇Linux下安装python的文章之后,又遇到新问题,在linux下C++调用python如何编译,或者用IDE时候需要哪些配置。
先看最简单的代码段
//test_cpp_python.cpp
#include "Python.h"
#include <iostream>
using namespace std;
int main()
{
Py_Initialize();
PyRun_SimpleString("print('Python')");
cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
Py_Finalize();
return 0;
}
根据之前windows下联合编程时候在vs2010下的配置的经验,我们需要将头文件和库文件加入编译的路径。
1. 头文件:这个好找,根据安装的目录找到即可,我装的是
/usr/local/python2.7.11/include/python2.7
这里需要注意,最后的python2.7这个文件夹不能省。
2. 库文件:在windows下库文件路径为python27_d.dll所在的路径python27/libs/,而与之对应的linux下是什么文件在网上怎么也没找到。
先随便加了几个库/usr/lib, /usr/lib64, /usr/local/python2.7.11/lib/等,都不行,在没有加入正确的库之前,用eclipse编译报错
经网上搜索,确实很可能是没加入对应的库文件导致的。
1. g++解决方案
想着这种问题搜不到,但是python的官网应该会有相应的解释,于是在官网上找到这个C