Основная ошибка показана в этой строке:
$ make -f makefile.mak "c: / program files / mingw / bin / gcc.exe" -Wall -Wnested-externs -ggdb -O0 -c -
Эта ошибка показывает, что Cygwin make
находит путь C компилятор т.е. $(CC)
в C:\Program Files\mingw\bin\gcc.exe
. Здесь OP установили Mingw и Cygwin на одной машине. Когда соответствующий установщик устанавливает cygwin и mingw, он добавляет /bin
папку в %PATH%
системную переменную среды. Следовательно, во время компиляции cygwin make
берет первый gcc.exe
путь в каталоге mingw, и появляется ошибка.
Чтобы устранить путаницу, %PATH%
переменная окружения должна быть правильно настроена. Более подробную информацию о том, как редактировать переменные среды, можно найти в ссылках ниже. Здесь я приведу простую схему. Откройте диалоговое окно «Выполнить» с помощью Win+ R. Введите control.exe
его и нажмите Enter. Перейдите в Система и безопасность> Система> Расширенные настройки системы> Переменные среды> Системные переменные> Путь.
Дважды щелкните по переменной «Path». Вы можете увидеть окно «Изменить переменную среды». Удалите два пути C:\cygwin
и C:\Program Files\mingw\bin
с Deleteключом.
Теперь создайте два пакетных файла: один cygwin.bat и mingw.bat. Это можно сделать одним файлом, я просто упрощаю. Скопируйте следующие строки в соответствующих пакетных файлах. Команды настроят среду для компиляции.
- Для Cygwin:
@echo off C: chdir C:\cygwin\bin C:\cygwin\bin\bash.exe --login -i
- Для Mingw:
@echo off set PATH=C:\Program Files\mingw\bin;%PATH% cmd /k