使用MinGW编译c程序会导致cc1.exe致命错误

时间:2018-06-14 00:02:57

标签: c mingw mingw-w64

我使用win-builds安装了MinGW-w64。 这一切都没问题但是当我使用

编译文件时
  

gcc -Wall -o prog.exe main.c

我收到此错误

  

cc1.exe: fatal error: Files/win-builds-1.5.0/include: No such file or directory   compilation terminated.

我更新了gcc路径。当我尝试构建eclipse时,我得到了同样的错误。 win-builds放置所有文件的位置为C:\Program Files\win-builds-1.5.0\,文件夹\include\存在。

我的猜测是cc1.exe正在尝试访问C:\Program Files\win-builds-1.5.0\include,但由于某种原因,它将C:\Program Files\win-builds-1.5.0\include分开。

如何让编译器工作? Error

修改

这是要编译的代码

/*
 * main.c
 *
 *  Created on: 13/06/2018
 *      Author: haslima
 */
#include <stdio.h>

int main()
{
    printf("Hello World");
    return 1;
}

编辑:

当我运行gcc -v -c -o prog.exe main.c时,我得到了这个输出:

Reading specs from c:/program files/win-builds-1.5.0/bin/../lib64/gcc/x86_64-w64-mingw32/4.8.3/specs
COLLECT_GCC=gcc
Target: x86_64-w64-mingw32
Configured with: ../gcc-4.8.3/configure --prefix=/opt/windows_64 --with-sysroot=/opt/windows_64 --libdir=/opt/windows_64/lib64 --mandir=/opt/windows_64/man --infodir=/opt/windows_64/info --enable-shared --disable-bootstrap --disable-multilib --enable-threads=posix --enable-languages=c,c++ --enable-checking=release --enable-libgomp --with-system-zlib --with-python-dir=/lib64/python2.7/site-packages --disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp --with-gnu-ld --verbose --enable-java-home --with-java-home=/opt/windows_64/lib64/jvm/jre --with-jvm-root-dir=/opt/windows_64/lib64/jvm --with-jvm-jar-dir=/opt/windows_64/lib64/jvm/jvm-exports --with-arch-directory=amd64 --with-antlr-jar='/home/adrien/projects/win-builds-1.5/slackware64-current/d/gcc/antlr-*.jar' --disable-java-awt --disable-gtktest --build=x86_64-slackware-linux --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
Thread model: posix
gcc version 4.8.3 (GCC)
COLLECT_GCC_OPTIONS='-v' '-c' '-o' 'prog.exe' '-mtune=generic' '-march=x86-64'
 c:/program files/win-builds-1.5.0/bin/../libexec/gcc/x86_64-w64-mingw32/4.8.3/cc1.exe -quiet -v -iprefix c:\program files\win-builds-1.5.0\bin\../lib64/gcc/x86_64-w64-mingw32/4.8.3/ -D_REENTRANT -IC:/Program Files/win-builds-1.5.0/include main.c -quiet -dumpbase main.c -mtune=generic -march=x86-64 -auxbase-strip prog.exe -version -o C:\Users\hasli\AppData\Local\Temp\ccnpAzB7.s
GNU C (GCC) version 4.8.3 (x86_64-w64-mingw32)
        compiled by GNU C version 4.8.3, GMP version 5.1.3, MPFR version 3.1.2, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring duplicate directory "c:/program files/win-builds-1.5.0/lib64/gcc/../../lib64/gcc/x86_64-w64-mingw32/4.8.3/include"
ignoring nonexistent directory "/opt/windows_64/opt/windows_64/lib64/gcc/x86_64-w64-mingw32/4.8.3/../../../../include"
ignoring duplicate directory "c:/program files/win-builds-1.5.0/lib64/gcc/../../lib64/gcc/x86_64-w64-mingw32/4.8.3/include-fixed"
ignoring duplicate directory "c:/program files/win-builds-1.5.0/lib64/gcc/../../lib64/gcc/x86_64-w64-mingw32/4.8.3/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory "/opt/windows_64/mingw/include"
ignoring nonexistent directory "C:/Program"
#include "..." search starts here:
#include <...> search starts here:
 c:\program files\win-builds-1.5.0\bin\../lib64/gcc/x86_64-w64-mingw32/4.8.3/include
 c:\program files\win-builds-1.5.0\bin\../lib64/gcc/x86_64-w64-mingw32/4.8.3/include-fixed
 c:\program files\win-builds-1.5.0\bin\../lib64/gcc/x86_64-w64-mingw32/4.8.3/../../../../x86_64-w64-mingw32/include
End of search list.
cc1.exe: fatal error: Files/win-builds-1.5.0/include: No such file or directory
compilation terminated.

1 个答案:

答案 0 :(得分:2)

来自[MinGW]: Getting Started(包括粗体):

  

MinGW可能会遇到包含空格的路径问题,如果没有,通常与MinGW一起使用的其他程序会遇到此类路径的问题。因此,我们强烈建议不要在路径名称引用中包含空格的任何位置安装MinGW 。您应该避免安装到任何目录或子目录中,其名称类似于&#34; Program Files&#34;或&#34;我的文件&#34;等

所以,解决方案非常简单:

  • 卸载您当前的版本(可能没有必要,但没有必要保留一些内容)
  • 请务必阅读所有安装要求/说明
  • 将其安装在 SPACE 免费目录

我应该早点考虑到这一点,因为我没有在默认目录中安装东西(例如我在&#34; c:\ Install \ x64 \中有 MinGW MINGW32 \ MINGW32 \ 7.2.0-POSIX的SEH-rt_v5-REV1&#34;

相关问题