Вы не отключаете исключения, устанавливая QMAKE_CXXFLAGS
, потому что этот параметр обрабатывается CONFIG
. Вы должны использовать
CONFIG-=exceptions
чтобы отключить их.
См. Аргументы g ++, когда у вас не изменились настройки QMAKE_CXXFLAGS
и CONFIG
:
g++ -c -O2 -frtti -fexceptions -mthreads -Wall <...> main.cpp
Теперь давайте установим QMAKE_CXXFLAGS
: получим
g++ -c -fno-exceptions -O2 -frtti -fexceptions -mthreads -Wall <...> main.cpp
Упс, мы получаем, что -fno-exceptions
переопределяется на CONFIG
s -fexceptions
.
Теперь давайте установим CONFIG
:
g++ -c -O2 -frtti -Wall -fno-exceptions <...> main.cpp
mingw32-make.exe[1]: Leaving directory `G:/proj/ingeritance'
main.cpp: In function 'int qMain(int, char**)':
main.cpp:22:15: error: exception handling disabled, use -fexceptions to enable
mingw32-make.exe[1]: *** [release/main.o] Error 1
mingw32-make.exe: *** [release] Error 2
Oh! ошибка компиляции!