Поскольку многие настройки жестко закодированы в спецификации файлов, я думаю, вам нужно создать свои собственные.Начните с чтения mkspecs / linux-g ++ / qmake.conf или mkspecs / win32-g ++ / qmake.conf
. Вы увидите, что по умолчанию CONFIG использует настройку warn_on.и в mkspecs / common / g ++ у вас есть
QMAKE_CFLAGS_WARN_ON += -Wall -W
QMAKE_CFLAGS_WARN_OFF += -w
QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
, так что вы можете изменить файл спецификации и установить новые настройки по умолчанию для каждого проекта, или вы можете установить эти переменные в файле проекта.
CONFIG += warn_on
QMAKE_CFLAGS_WARN_ON = -Wall -Werror -Wundef -Wextra -pedantic
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
qt include path жестко закодирован в mkspecs / features / qt.prf как
#handle includes
INCLUDEPATH = $$QMAKE_INCDIR_QT $$INCLUDEPATH #prepending prevents us from picking up "stale" includes
Вы не хотите, чтобы QMAKE_INCDIR_QT был частью INCLUDEPATH, поскольку его компоненты объединены с -I.Вы хотите расширить его как $$ join (QMAKE_INCDIR_QT, "-isystem", "-isystem") где-нибудь еще ...