QTCreator打開.pro工程文件后,依據不同的構建套件創建項目組。在項目組中,點開構建步驟的“詳情”,增加一個自己的宏定義,比如:
DEFINES+=IMX_287
然后,我們在.pro文件中添加:
contains(DEFINES,IMX_287){ # contains 'Embedded Linux' message( "Configuring for Embedded Linux CLIENT build..." ) INCLUDEPATH += /opt/netconfig-imx287/include /usr/local/include /usr/lib/perl/5.18/CORE LIBS += -L/opt/netconfig-imx287/lib -ldl -Wl,-E -lm QMAKE_CFLAGS += -fno-strict-aliasing -pipe -Os -Ulinux \ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux=linux # QMAKE_CFLAGS += -Wno-unused-parameter -Wunused-variable # QMAKE_CXXFLAGS += -Wno-unused-parameter -Wunused-variable } else { # contains 'Desktop Linux' INCLUDEPATH += /opt/netconfig-pc/include /usr/local/include /usr/lib/perl/5.18/CORE LIBS += -L/opt/netconfig-pc/lib -ldl -Wl,-E -lm QMAKE_CFLAGS += -fno-strict-aliasing -g -O2 -Ulinux -fstack-protector -fno-strict-aliasing -pipe \ -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 # QMAKE_CFLAGS += -Wno-unused-parameter -Wunused-variable # QMAKE_CXXFLAGS += -Wno-unused-parameter -Wunused-variable }
如此一來,在我們選擇相應的項目配置時,qmake就會根據我們自定義的DEFINE來配置編譯選項。
在需要對工程文件添加額外的編譯參數時,需要在.pro文件中追加相關的編譯選項,對於cpp文件,要使用QMAKE_CXXFLAGS,對於c文件,要使用QMAKE_CFLAGS。
轉自https://blog.csdn.net/chinley/article/details/48997651