我到处都是谷歌搜索,并没有设法弄清楚如何从我的Qt生成的Makefile中删除-fpermissive
标志。 -fpermissive
标志默认存在,即使我在Qt项目文件中QMAKE_CXXFLAGS -= -fpermissive
尝试删除它。这是我的Makefile,标志是:
CFLAGS = -fpermissive -finline-functions -Wno-long-long -g -Wall $(DEFINES)
CXXFLAGS = -fpermissive -finline-functions -Wno-long-long -g -fexceptions -mthreads -frtti -Wall $(DEFINES)
如何删除这些?
答案 0 :(得分:1)
我的QtCreator生成的makefile在其中的任何位置都没有 -fpermissive ,至少就我可以Ctrl + F而言。 检查项目的构建设置,并确保在那里没有 -fpermissive 作为命令行参数。
这是我的QMake生成的makefile中的两行:
CFLAGS = -pipe -fno-keep-inline-dllexport -O2 -Wall -Wextra $(DEFINES)
CXXFLAGS = -pipe -fno-keep-inline-dllexport -O2 -std=c++11 -frtti -Wall -Wextra -fexceptions -mthreads $(DEFINES)
我的makefile还引用了一个名为'qmake.conf'的文件,对我来说,它位于: 的 C:/Qt/Qt5.0.1/5.0.1/mingw47_32/mkspecs/win32-g ++ / qmake.conf 强>
看起来qmake.conf用于帮助为不同的编译器和平台生成makefile,并且可以为makefile添加参数。