使用类似环境的 Qt Creator 运行脚本

Posted

技术标签:

【中文标题】使用类似环境的 Qt Creator 运行脚本【英文标题】:Run script using Qt Creator like environment 【发布时间】:2018-04-19 20:51:54 【问题描述】:

我尝试使用 KDE Neon 运行部署脚本。我已从 bash 手动启动脚本,但出现错误 qmake will not found。

当尝试直接从 bash 运行 qmake 时,我收到以下错误:

$ qmake -v
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory

bin 文件夹几乎是空的,并且不包含 qmake。在路径/usr/lib/x86_64-linux-gnu/qt5/bin/ 中可以找到完整的Qt 安装,但也没有qmake。 /usr/bin/qmake 显然是指向丢失的/usr/lib/x86_64-linux-gnu/qt4/bin/qmake 的链接。

qmake 在使用 Qt Creator 时可以正常工作。 Qt Creator 使用的二进制文件是/home/<user>/Qt/5.10.0/gcc_64/bin/qmake

显然/usr/... Qt 安装不完整。首先我想到了如何完成安装以及如何从 Qt4 切换到 Qt5。然而,Qt Creator 显然能够使用它自己的位于 Qt 环境的/home/...,我也想在 Qt Creator 之外运行脚本时使用它。

有没有一种方法可以使用与 Qt Creator 相同的 Qt 环境从 bash 启动脚本(无需修改操作系统配置)?

【问题讨论】:

/home/<user>/Qt/5.10.0/gcc_64/bin/qmake yourpro.pro 这不适合你吗?如果您使用qmake,当您有链接时,它将从/usr/.. 获取。 @user3606329 我不能使用绝对 qmake 路径。我正在使用一个名为 linuxdeployqt 的工具,它从路径间接调用 qmake。 【参考方案1】:

QtCreator 本身只修改环境,即它设置

export PATH="/home/<user>/Qt/5.10.0/gcc_64/bin:$PATH"
export QTDIR="/home/<user>/Qt/5.10.0/gcc_64"

这可以通过检查“项目”选项卡中的“构建环境”部分来验证。在检查运行配置的环境时,编译的应用程序还需要一个才能找到正确的.so 文件(构建环境用于运行构建工具。运行环境用于运行已编译的应用程序)。

export LD_LIBRARY_PATH="/home/<user>/Qt/5.10.0/gcc_64/lib:$LD_LIBRARY_PATH"

因此,为了从命令行轻松使用 qmake/...,只需创建一个脚本来设置这些(可能还有您在 QtCreator 中为您的构建定义的其他脚本)并在编译之前获取它,它应该可以工作。

source ~/qt-home-init.sh
qmake ...

【讨论】:

以上是关于使用类似环境的 Qt Creator 运行脚本的主要内容,如果未能解决你的问题,请参考以下文章

qt creator + vs2019编译记录

安装和配置Qt Creator开发工具

qt creator中在调试状态下如何查看变量的值

Qt Creator的下载

Qt Creator的下载和安装

Qt-Creator 中 OpenCV 程序中的链接器错误