Это мое понимание отношений между MinGW и MSYS.
При установке MinGW и его gcc toolchain установка MSYS не является обязательной.
Установив MSYS, вы получите bash и несколько других инструментов, которые, как я полагаю , предназначены для использования с только что установленным MinGW gcc . Однако, когда вы запускаете пакетный скрипт MSYS, который открывает оболочку bash , gcc отсутствует в вашей PATH . На этом этапе вы делаете одну из двух вещей:
- Вы снова запускаете установщик MinGW и замечаете, что вы не выбрали
gccв категории MSYS. Вы думаете про себя: «Разве я не установил gcc?"Вы ждете загрузки этого пакета и возвращаетесь в оболочку MSYbash. Вы запускаетеgcc --versionи видите, что это древняя версияgccдесять лет назад. Затем вы переходите к следующему пункту, если даже понимаете, что это вариант.
ИЛИ ЖЕ
- Вы
echo $PATH, чтобы обнаружить, чтоC:\MinGW\binнаходится на вашем пути, ноC:\MinGW\binне смонтирован. Вы добавляете правильную командуmountв ваш~/.profile, и рады, что последняя версияgccпредоставленная MinGW, теперь находится в вашемPATH.
Почему у MinGW и MSYS есть отдельные версии gcc? Почему пользователь не имеет доступа к последней версии gcc предоставленной MinGW непосредственно в MSYS? Я не очень часто использую Windows, и я пытался использовать MinGW и MSYS, чтобы научить моего брата С. Я не хотел использовать версию gcc десять лет назад. Такое поведение было непонятным.
