Możliwe jest współistnienie dwóch wersji GCC: natywna wersja Windows MinGW i wersja Cygwin Linux? Sprawy stają się problematyczne, gdy na Cygwin system próbuje skompilować się z wersją GCC MinGW i na odwrót. Jak mogę zachować obie wersje GCC?GCC na Cygwin współistniejący z MinGW
Odpowiedz
Psychiczne debugowanie sugeruje, że masz jedną lub obie na swojej globalnej ścieżce. Wyjdź z globalnej ścieżki (gcc powinno dać "złe polecenie lub nazwę pliku" lub podobny przebieg bezpośrednio z cmd.exe) i skonfigurować skróty, aby załadować odpowiednie środowisko dla każdego.
Mam je zainstalowane i współistnieją pokojowo. Cygwin jest zainstalowany w c: \ cygwin, a MinGW jest zainstalowany w c: \ msys \ mingw. Nie musiałem robić nic niezwykłego, aby je koegzystować, ponieważ ich środowiska są ustawione przez ich odpowiednie skróty startowe.
Musi być jakiś szczególny krok w twojej instalacji, który spowodował ich sprzężenie w jakiś sposób. Jeśli opisujesz sekwencję instalacji i lokalizacje, być może ktoś może zaoferować dodatkową poradę.
Sposób, w jaki je oddzielam, polega wyłącznie na korzystaniu ze środowiska Cygwin. Rzeczy MinGW nie ma domyślnej ścieżki PATH i nie używam żadnych programów MSYS. Do codziennego użytku nie można powiedzieć, że mam zainstalowany MinGW.
W tych rzadkich przypadkach, kiedy trzeba przetestować coś z MinGW, uruchomić ten skrypt z Cygwin Bash wiersza, który ja nazywam mingw
:
#!/bin/sh
PATH=/cygpath/c/mingw/bin:/cygpath/c/windows/system32:/cygpath/c/cygwin/bin
echo "Say 'exit' to leave MinGW shell and restore Cygwin environment."
/usr/bin/bash --rcfile ~/.mingwrc
dostosować ścieżkę do smaku. Jedyną ważną rzeczą jest to, że umieszcza katalog bin MinGW przed katalogiem bin Cygwin. Prawdopodobnie nadal chcą katalogu bin Cygwin w ścieżce do VI LS, itp
Ostatni wiersz tego skryptu działa ten skrypt, ~/.mingwrc
:
alias make=mingw32-make
PS1='MinGW: \W \$ '
Nie można połączyć te dwa skrypty z powodu na sposób, w jaki działa Bash. Drugi skrypt zawiera rzeczy, które mogą się zdarzyć tylko po uruchomieniu "powłoki MinGW". Przypisanie PS1 przypomina, że jesteś w powłoce MinGW, a alias zapewnia, że wpisywanie "make" uruchamia własny program make (1) MinGW zamiast Cygwin, ponieważ moje pliki MakeGiles MinGW używają poleceń DOS, a nie poleceń Bourne'a, a to jest jedną z różnic w porcie MinGW w GNU make. Jeśli chcesz użyć kompilatora MinGW z wersją Cygwin, możesz zostawić ten alias jako linię.
Kiedy "wyjdziesz" poza podrzędną powłokę MinGW, przywracasz poprzedni PS1, PATH i aliasy.
Skorzystaj z globalnej ścieżki. Następnie należy utworzyć nowy plik *.cmd
z następującym (trwa Cygwin jako przykład):
@echo off
rem file: start cmd with cygwin's path
cmd.exe /k path=C:\cygwin\bin;%path%
Można wpisać path
w oknie poleceń sprawdzić.
Teraz możesz pracować z cygwin. Środowisko jest ważne tylko w zakresie cmd.exe
.
- 1. Jak korzystać z MinGW-w64 z Cygwin?
- 2. MinGW jako niezawodny 64-bitowy kompilator GCC
- 3. Błąd Cygwin Gcc podczas ładowania bibliotek współdzielonych?
- 4. strerror z MinGW-W64
- 5. jak odinstalować MinGW i zrobić 'make' Cygwin jak deafult zrobić program z gcc 3.8.1
- 6. Kompilowanie za pomocą gcc (cygwin na windows)
- 7. Budowanie Pythona z Mingw i gcc
- 8. Dlaczego potrzebne są Cygwin i MinGW?
- 9. Eclipse CDT nie znajduje ani toolguła Cygwin ani MinGW
- 10. Kiedy używać Cygwin lub MinGW do kompilowania kodu C?
- 11. GCC w systemie Windows - Bash w systemie Ubuntu w systemie Windows (WSL), CygWin, MinGW
- 12. Jak skompilować rozszerzenie PHP w oknach z cygwin/mingw?
- 13. Moduł gcc i adres sanitizer MinGW-w64
- 14. Eclipse CDT z Cygwin GCC: automatyczne wykrywanie symboli i ścieżek
- 15. Osadzanie binarnych plamek za pomocą gcc mingw
- 16. Problemy ze std :: stoi, nie działa na MinGW GCC 4.7.2
- 17. Niezdefiniowany odniesienia podczas dynamicznego powiązania z gcc w Cygwin
- 18. Pomoc z GCC i kodem ObjectiveC oraz Cygwin
- 19. grając z GCC 4.6 na Windows
- 20. MinGW - Zaktualizuj GCC w wersji 3.4.5 do wersji 4.4
- 21. MinGW GCC: "Nieznany typ znaku konwersji" h "" (snprintf)
- 22. Dlaczego istnieje Mingw?
- 23. mingw-4.8.1 problem z atomem
- 24. Python: -mno -cygwin
- 25. Błąd kompilacji gcc z pythona
- 26. Nie można pobrać MinGW z Sourceforge
- 27. Różnice między MinGW z msysgit (aka Git na Windows) i MinGW z MinGW.org
- 28. Problem kompilacji freetype2 z MinGW/Msys
- 29. Jak radzić sobie z Eclipse CDT + Cygwin?
- 30. Czy mogę połączyć MSVCRT statycznie z mingw?
Najlepsza odpowiedź dla mnie. – iab