linux下qt用c++调用python
看了很多篇这样的文章,但都没有找到适合自己的,今天就自己通过经验去尝试,结果配置出来了,可以进行下一步,现在记录一下过程,方便下次配置,也希望能对你们有用。首先确保你的linux系统下正确安装了python和qt 我的qt版本是5.8.0 然后python版本是3.5.0的 先新建一个qt的项目,然后右键点击添加库,选择外部库然后库文件的路径就是一般是在usr/lib/python3.5/co
看了很多篇这样的文章,但都没有找到适合自己的,今天就自己通过经验去尝试,结果配置出来了,可以进行下一步,现在记录一下过程,方便下次配置,也希望能对你们有用。
首先确保你的linux系统下正确安装了python和qt
我的qt版本是5.8.0 然后python版本是3.5.0的
先新建一个qt的项目,然后右键点击添加库,选择外部库
然后
库文件的路径就是一般是在usr/lib/python3.5/config-3.5m-x86_64-linux-gnu 然后选择libpython3.5m.a
包含路径选择 /usr/include/python3.5
这里如果你们安装的时候不是安装在usr下的话,可以先在终端输入 locate libpython 确认位置再添加
添加好路径 平台后,点击下一步,点击完成就可以了,这个时候 .pro 里面就已经自动生成了python的库和路径了。
这个时候添加python的头文件和函数,构建执行一下,没有错误就ok了
接下来是报错的解决问题,一般都是会遇到一个问题就是 object.h里的一个定义和qt的全局slots冲突,这时就只需修改那个object.h的slots名字就可以了
错误如下
双击错误 跳转
改为随便一个英文名字就可以了,这个几乎不会用到。
更改后保存,要说的是,如果你的这个文件有写保护的话,在这里更改是更改不了的,要去到该文件夹下,把文件的属性改为可读可写可执行
先去到计算机,打开usr这个文件夹, usr/include
选择终端打开, 输入 chomd -R 777 python3.5/ (将该文件夹下的所有文件改为可读可写可执行) 权限不够就在前面加 sudo
更改好之后就打开文件夹,找到object.h 然后在里面找到那个slots 更改保存即可,
好了,回到qt重新载入,编译就可以通过了
好了,希望以上内容对你们有帮助,拜了拜。
更多推荐
所有评论(0)