У меня был очень длинный путь, и где-то там есть файл (не gcc.exe), а другой файл, к которому gcc.exe обращается по пути ..
Поэтому, когда я очистил путь, это сработало
C:\MinGW>cd bin
C:\MinGW\bin>where gcc.exe
C:\MinGW\bin\gcc.exe
C:\Perl64\site\bin\gcc.exe
^^ Так что при запуске gcc оттуда обязательно запустится ming gcc.exe
C:\MinGW\bin>type file6.c
#include<stdio.h>
void main()
{
int num1,num2;
scanf("%2d %4d",&num1,&num2);
printf("a=%d b=%d",num1,num2);
scanf("%d",&num1);
//flushall();
printf("c=%d",num1);
}
Скомпилируя его, я получил эту ошибку
C:\MinGW\bin>gcc file6.c
gcc: error: CreateProcess: No such file or directory
Мой путь был огромным
C:\MinGW\bin>path
PATH=C:\Windows\system32;C:\Windows;C:\Windows\system32\wbem;C:\P......
C: \ MinGW \ bin> path |grep -io "ming"
Там не было мин.
C: \ MinGW \ bin> echo MING |grep -io "ming" MING
(и да, что grep работает .. у пути там не было ming)
Очистив мой путь полностью, привел его к работе!
C:\MinGW\bin>set PATH=
C:\MinGW\bin>gcc file6.c
C:\MinGW\bin>
Итак, пока не ясно, что именно в ПУТИ привело к столкновению.Какой каталог, какой файл.
Update-
Вышеприведенное, по-моему, верно для меня, но, добавим, это также не простой случай чего-то более раннего в путиконфликтует .. потому что обычно текущий каталог имеет приоритет.И это здесь, поскольку gcc --version показывает, что он работает с ming, а не с одним из конфликтующих каталогов.Так что происходит нечто забавное, если конфликтующий каталог находится в пути), нужно либо сделать. \ Gcc, либо добавить .
в начало пути, либо добавить c:\MinGW\bin
перед любыми конфликтующими каталогами в пути.это тот случай, даже когда вы находитесь в C:\MinGW\bin
, и это странно.И когда он выдает ошибку, он все еще запускает gcc Ming, но (по какой-то причине) тоже смотрит на конфликтующий каталог, как я вижу из монитора процессов.Здесь может быть больше ответа http://wiki.codeblocks.org/index.php?title=Installing_MinGW_with_Vista в ссылке, упомянутой в очень одобренном ответе здесь
Это бит Ming32 ..
Глядя на 64-битную версию Ming, вероятно, имеет те жепроблема, но я вижу, что интересно, это идет с файлом bat, который (разумно) фактически помещает каталог bin в начало пути.И похоже, что это стандартный способ правильной работы Ming gcc.
IDE code :: blocks (разумно) также помещает каталог bin в начало пути.Если вы запустите программу на C, которая показывает переменные окружения, вы увидите это.