C预处理器(MinGW的cpp.exe)不产生任何输出。

问题描述 投票:0回答:1

我正在尝试运行 C:\MinGW\bin\cpp.exe -v -o main.txt test.c 在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 和a 窗口建设 它的工作原理和预期一样(gpp.exe -o main.txt test.c - 实际上,你会想要 -C 选项,见 文件),但我还是想知道我使用cpp的问题在哪里。
mingw c-preprocessor
1个回答
0
投票

我在文件管理器 "生成 "的命令提示符下运行这个程序。cmd.exe 直接执行,会显示以下错误信息对话框。

---------------------------
cc1.exe - System Error
---------------------------
The code execution cannot proceed because libgmp-10.dll was not found. Reinstalling the program may fix this problem. 
---------------------------
OK   
---------------------------

进程监控 显示出最终 Exit Status: 1 但我在过滤进程名时没有看到上面的DLL。cpp.exe虽然有一些 BUFFER OVERFLOW 的结果 cc1.exe 也是。

该DLL存在于我的 C:\MinGW\bin,所以将此路径添加到 环境变量 不仅解决了这个问题"libgmp-10.dll丢失",但也使 cpp.exe 已知,所以运行时不需要路径。

© www.soinside.com 2019 - 2024. All rights reserved.