谢谢 https://www.cnblogs.com/xia-weiwen/p/7932379.html
在Qt(C++)中与Python混合编程,可以使用PythonQt库。
网站首页:http://pythonqt.sourceforge.net
下载页面:https://sourceforge.net/projects/pythonqt/files/
1.通过apt-get下载libpythonqt-dev和libpythonqt3.0
xxx@ubuntu:~$ apt-cache search libpythonqt
libpythonqt2.1 - Dynamic Python binding for the Qt framework - runtime
2.下载源代码后用QT打开其中的src文件夹下的项目进行编译,编译结果在src父目录下的lib文件夹下,在qt添加引用
INCLUDEPATH += /usr/include/python2.7/\
/usr/include/PythonQt/\
#INCLUDEPATH += /usr/include/python3.5/\
#unix:!macx: LIBS += -lPythonQt
#unix:!macx: LIBS += -lpython3.5m
unix:!macx: LIBS += -lpython2.7
unix:!macx: LIBS += -L/home/kare/Documents/QtProg/PythonQt3.2/lib\
-lPythonQt-Qt5-Python2.7
注意:这个下载的默认是py2.7的,所以对应的py库需要选择py2.7,选择错误会报错Segment Fault,导致无法确认原因。
另外 #include<Python.h>中有一个冲突的定义 一个结构体中的数据命名为slots,导致与qt冲突报错,获取权限改掉这个名字,但是以后用到该结构体的地方需要注意。