use*_*099 10 c qt gcc qmake c-preprocessor
我在Qt Creator中编译C代码,我需要查看预处理器输出.
我在make中添加了-E标志,但是我没有看到*.i文件:
mingw32-make.exe -e -w in \qt\qt-build-desktop
Run Code Online (Sandbox Code Playgroud)
请帮忙.
Fra*_*eld 17
-E是一个gcc选项,而不是make选项,所以将它传递给make将不会做任何事情.此外,使用-E适用于单个文件,但会因为没有生成正确的.o文件而中断构建(它包含预处理的源).什么工作正常,但将以下内容添加到.pro文件:
QMAKE_CXXFLAGS += -save-temps
Run Code Online (Sandbox Code Playgroud)
现在,如果您构建项目,源文件foo.cpp的预处理源将保留为foo.ii. (在OS X上使用make + gcc进行测试,我认为它也适用于mingw).
编辑:刚刚了解到MSVC的等效标志是
QMAKE_CXXFLAGS += -P
Run Code Online (Sandbox Code Playgroud)