【发布时间】:2020-05-11 08:19:59
【问题描述】:
我正在尝试在 test.c 上运行 C:\MinGW\bin\cpp.exe -v -o main.txt test.c:
#ifdef HELLO
HELLO!
#else
BYE!
#endif
但只得到以下输出,没有明显错误,也没有写入main.txt(也没有任何其他文件):
Using built-in specs.
COLLECT_GCC=C:\MinGW\bin\cpp.exe
Target: mingw32
Configured with: ../src/gcc-8.2.0/configure --build=x86_64-pc-linux-gnu --host=mingw32 --target=mingw32 --prefix=/mingw --disable-win32-registry --with-arch=i586 --with-tune=generic --enable-languages=c,c++,objc,obj-c++,fortran,ada --with-pkgversion='MinGW.org GCC-8.2.0-5' --with-gmp=/mingw --with-mpfr=/mingw --with-mpc=/mingw --enable-static --enable-shared --enable-threads --with-dwarf2 --disable-sjlj-exceptions --enable-version-specific-runtime-libs --with-libiconv-prefix=/mingw --with-libintl-prefix=/mingw --enable-libstdcxx-debug --with-isl=/mingw --enable-libgomp --disable-libvtv --enable-nls --disable-build-format-warnings
Thread model: win32
gcc version 8.2.0 (MinGW.org GCC-8.2.0-5)
COLLECT_GCC_OPTIONS='-E' '-v' '-o' 'main.txt' '-mtune=generic' '-march=i586'
c:/mingw/bin/../libexec/gcc/mingw32/8.2.0/cc1.exe -E -quiet -v -iprefix c:\mingw\bin\../lib/gcc/mingw32/8.2.0/ test.c -o main.txt -mtune=generic -march=i586
我找到了 Denis Auroux / Tristan Miller 的 GPP 和 windows build,它们按预期工作(
gpp.exe -o main.txt test.c - 实际上,您需要 -C 选项,请参阅 docs ),但我仍然对我使用 cpp 的问题感兴趣。
【问题讨论】:
-
看起来有点像 cc1 死了或者甚至没有启动。我的 cpp 工作正常。我建议检查 Process Monitor 是否可以告诉您更多信息。
-
@DavidMacek 谢谢!它死了,因为它找不到 DLL,因为它没有在 Path 中设置...我没有收到关于此的错误消息对话框,因为我正在使用的 cmd.exe 是在另一个应用程序中启动的。
-
很高兴能提供帮助。
标签: mingw c-preprocessor