Ubuntu中完成Linux环境Qt环境配置

之前学习linux应用开发时用到了QT的交叉编译,使其生成的程序能在韦东山的iMX6ULL pro板子上运行,最近想系统学习一下QT,发现环境有些乱了,有些文件可能被误删了,而且直接用之前的kits配置,生成的程序需要在arm板子上才能看到效果,有点麻烦,但是在QTcreator中直接运行会提示:

/home/book/C++/test/build-untitled-100ask_imx6ull-Debug/untitled: 1: /home/book/C++/test/build-untitled-100ask_imx6ull-Debug/untitled: Syntax error: word unexpected (expecting ")") 按 <RETURN> 来关闭窗口...

这通常说明是给 **100ask imx6ull 开发板(ARM架构)**进行交叉编译,而你尝试 在 Ubuntu x86 主机上直接运行这个 ARM 可执行程序,所以会报错。

这是需要在 Tools -->options下面配置一下kits,但是选择qt版本时,发现之前的被删了,导致不能用,Desktop是红色感叹号,不能选

✅ 修复步骤(确保 Desktop Kit 可用):

✅ 1. 修复 Qt 版本(重点)

Qt version 那一项显示的是 Qt 5.12.8 (host),但前面有一个感叹号说明它本身有问题。

请按以下操作检查 Qt 是否正确:

  1. 点击左上角“Qt Versions”标签页。

  2. 检查是否有一个有效路径的 Qt 版本(例如 /usr/lib/qt5/opt/Qt5.12.8/gcc_64/bin/qmake)。

  3. 如果路径错误或不存在,就需要重新添加:

✅ 添加新的 Qt 版本:

点击 添加(Add),然后浏览选择系统中的 qmake 路径,例如:

/usr/bin/qmake

或:

/opt/Qt5.12.8/gcc_64/bin/qmake

注意:qmake 是 Qt 的构建工具,必须存在于 Qt 安装目录下。


✅ 2. 修复 Qt mkspec(如果为空)

在 Desktop Kit 设置中,Qt mkspec 如果为空或报错,请点击右侧 “Change” 按钮,在下拉菜单中选择:

linux-g++-64


✅ 3. 应用并设置为默认

完成上述修复后:

  • 点击右下角 Apply 应用设置。

  • 点击右侧 Make DefaultDesktop 设为默认 Kit。

  • 然后点击 OK 退出。


✅ 4. 回到项目创建页面重新勾选 Desktop Kit

这样就可以成功点击“下一步”进行项目创建了。


如果你不确定 qmake 的路径,可以运行以下命令确认:

which qmake

或者列出系统 Qt 安装:

dpkg -l | grep qt 

当选择/usr/bin/qmake这个时,会出现报错:

这说明尝试添加的是 Qt4 的 qmake,但该文件不是一个有效的可执行文件,可能是残留的旧文件或已损坏。

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

这表明当前系统的 /usr/bin/qmake 实际上是一个坏的软链接(可能指向了 Qt4 但目标文件已经不存在),所以无法执行。

✅ 解决方法:重新指向正确的 Qt5 qmake

第一步:查找正确的 Qt5 qmake

运行以下命令,查找系统中 Qt5 的 qmake 实际安装位置:

sudo find / -name qmake 2>/dev/null | grep qt5

如果找到了例如 /usr/lib/qt5/bin/qmake,那么就可以继续下一步。


第二步:修复 /usr/bin/qmake 的符号链接

假设你找到了 Qt5 的路径是 /usr/lib/qt5/bin/qmake,你可以用以下命令修复:

sudo ln -sf /usr/lib/qt5/bin/qmake /usr/bin/qmake

如果路径不同,比如 /opt/qt5/bin/qmake,那就改成对应的路径。


第三步:验证是否修复成功

qmake -v

你应该能看到类似如下输出:

QMake vers ion 3.1 Using Qt version 5.12.8 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值