每当我尝试在其安装目录(E:\MinGW\bin
)之外运行GCC时,我都会收到此错误.
所以,让我说我在,E:\code
并有一个名为的文件one.c
.跑步:
gcc one.c -o one.exe
会给我这个错误:
gcc: CreateProcess: No such file or directory
Run Code Online (Sandbox Code Playgroud)
唯一的解决方法是导航到其安装目录,从那里运行gcc,并指定所有其他路径.我的环境变量Path
包含E:\MinGW\bin
.
有什么建议来解决这个问题?我正在运行Windows XP SP3.
Her*_*ral 31
根据Code :: Blocks wiki,你需要添加C:\MinGW\libexec\gcc\mingw32\MinGW-Version
到你的PATH
.无需重新启动,但您需要打开另一个终端才能获得最新PATH
设置.
对于MinGW-w64,那是 <mingw install directory>\libexec\gcc\x86_64-w64-mingw32\4.7.0\
小智 30
由于没有安装C++编译器,我遇到了类似的问题.在我的例子中,我正在为Python扩展编译.cpp文件,但编译器首先被调用为c:\ mingw\bin\gcc.exe.
在内部,gcc.exe会注意到它被要求编译.cpp文件.它会尝试调用g ++.exe并失败并显示相同的错误消息:
gcc.exe:CreateProcess:没有这样的文件或目录
我刚遇到这个问题.
在我的情况下,问题是由于下载GCC包时出现问题.mingw-get程序认为它完成了下载,但事实并非如此.
我想升级GCC,所以我使用mingw-get来获得更新的版本.出于某种原因,mingw-get认为特定文件的下载已经完成,但事实并非如此.当它去提取文件时,我猜它发出了一个错误(我甚至懒得看 - 我只是跑了"mingw-get update && mingw-get install mingw32-gcc"并把它留在那里).
为了解决这个问题,我通过"mingw-get remove mingw32-gcc"删除了gcc,并删除了包文件(mingw-get没有完全下载),它位于mingw缓存文件夹中("C:\ MinGW \"在我的系统中使用var\cache\mingw-get\packages,然后再次运行install命令.它下载并安装了GCC缺失的部分(它还没有完全下载gcc-core包).
这解决了我的问题.
有趣的是,mingw-get足够聪明,即使我删除了缓存文件夹中的包文件,也可以继续下载gcc-core,并且还删除了mingw32-gcc包.
我认为更基本的问题是,由于没有安装gcc-core文件,cc1不存在.而gcc使用cc1.我想,当gcc尝试启动cc1时,它使用CreateProcess传递cc1的路径,这不是现有文件的路径.因此错误消息.
所以这是一个愚蠢的错误消息,因为它不告诉你它找不到什么文件.
使用详细标志再次运行该命令gcc -v
以查看gcc的用途.
在我的情况下,它发生了它试图打电话cc1plus
.我检查过,我没有.安装了mingw的C++编译器然后我做了.
小智 5
我有完全相同的问题.
重新检查后PATH
,我意识到我安装了Mingw
(64位)和Cygwin
(32位).问题是,无论是Mingw
和Cygwin
有g++
.
通过停用路径Cygwin
,错误消失了.
小智 -1
它特别告诉你在windows中为migwin设置环境变量后需要重新启动。