最近想运用linux系统下Qt来实现c++ 与python的混合编程,linux系统会自带python2.7版本或者python3.5版本(深度linux)。
Qt调用python文件需要在pro文件中添加lib 和 include ,路径如下:
include 和 lib 文件路径在linux系统下一直找不到,
①include 可以通过终端输入命令:sudo apt-get install python3.x -dev 解决 ,/usr/include/python下可以找到
②lib文件就一直找不到
因此就重新安装了python3.8,问题得以解决。
Linux 安装Python3.8开发环境步骤:
第一步:下载Python3.8下载
1.打开任意浏览器: https://www.python.org/downloads/source/
2.选择适用于Unix/Linux的源码压缩包(Source Code 可用于 Linux 上的安装)
这里我选择的是python3.8。
第二步:linux系统中,打开终端,执行命令
1.解压:
tar -zvf Python-3.8.0.tgz
2.安装:
①cd Python-3.8.0
②./configure --prefix=/usr/local --enable-shared --enable-optimizations
--enable-optimizations 是优化选项(LTO,PGO 等)加上这个 flag 编译后,性能有 10% 左右的优化
--enable-static:生成静态链接库
--enable-shared:生成动态链接库
③make && make install(建议加上权限 sudo)
这步骤可能会报错error: /usr/bin/install: 无法创建普通文件'/usr/local/bin/python3.8' 没有权限
加上权限还是报错,可以通过输入命令:
make
sudo make altinstall -->安装Python二进制文件
不要使用标准的make install,因为它将覆盖默认的系统python3二进制文件。这样就可以解决上面创建文件的错误问题
④ 运行以下命令进行验证
python3.8 --version
正常输出:Python 3.8.0
错误输出:python3: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file
导致原因:编译安装完成后,没有将python/lib下的文件放入默认库/usr/lib或/lib中,导致初始化时无法加载库文件。
复制so文件到/usr/lib下即可,再次运行就可以运用了。
此时python环境就安装完成了。