我正在尝试编译一个使用“override”关键字的 Qt 项目,因此需要 GCC 4.8。我已经在 Ubuntu 12.04 机器上安装了 GCC 4.8,它作为 gcc-4.8 和 g++-4.8 位于 /usr/bin 中。
我在 Qt Creator 中添加了一个编译器,并将“编译器路径”设置为/usr/bin/g++-4.8
,并确保我使用的工具包设置为使用此编译器。但是,qmake 生成的 Makefile 仍然设置了CC = gcc
和CXX = g++
。如果我手动附加-4.8
,它会执行我想要的操作。为什么 qmake 没有生成 Makefile 来执行此操作?我在 Qt Creator 中缺少什么,以至于它指向错误的 gcc 二进制文件?
我知道这update-alternatives
可以完成这项工作,但我不想为了运行 gcc 的替代版本而运行它。(也许将来我会想要两个具有不同版本 gcc 的 Qt 项目。)
答案1
找到了解决此问题的方法:将以下内容添加到我的.pro
文件中:
linux-g++ | linux-g++-64 | linux-g++-32 {
QMAKE_CXX = g++-4.8
QMAKE_CC = gcc-4.8
}