我正在构建Qt 5.4,我想使用与系统版本不同的自定义构建的GCC
版本。我不想用我的系统替换系统GCC
。但是,我不知道如何更改Qt构建系统使用的编译器绝对路径,以及如何添加自定义标志。通常,开源库使用CXX
和CXXFLAGS
变量来改变编译器的绝对路径及其选项,但看起来Qt构建系统忽略了这些变量。
Qt 5.4构建系统是否有与GNU项目CXX
和CXXFLAGS
以及LD
和LDFLAGS
类似的常见选项?
答案 0 :(得分:4)
正如@BartoszKP所建议的那样,需要制作自定义构建平台。更容易(但不那么优雅,不那么“教育”)的想法是修改现有平台。
我使用linux-g++
平台作为基础。相对于源代码目录的此平台qmake.conf
文件路径为qtbase/mkspecs/linux-g++/qmake.conf
。我在这个文件的最底部添加了以下行:
QMAKE_CXX = /path/to/custom/g++
QMAKE_LINK = /path/to/custom/g++
QMAKE_LFLAGS += -custom-link-flags-here
QMAKE_CC = /path/to/custom/gcc
QMAKE_LINK_C = /path/to/custom/gcc
现在Qt构建平台使用我的自定义编译器而不是现有的系统编译器,它添加了我的自定义链接器标志。
答案 1 :(得分:0)
最简单的方法是使用:
make CC=/path/to/custom/gcc CXX= /path/to/custom/g++ LINK=/path/to/custom/g++ LFLAGS= -custom-link-flags-here
现在Qt将使用您的自定义编译器而不是现有的系统编译器。