MinGW

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

MinGW (Minimalist GNU for Windows) – port GCC, dostarczający darmowe i otwarte środowisko oraz narzędzia pozwalające na kompilację natywnych plików wykonywalnych dla platformy Windows.

Microsoft Windows (ang. windows „okna”, IPA: [maɪkɹoʊsɑːft ˈwɪndoʊz]) – rodzina systemów operacyjnych stworzonych przez firmę Microsoft. Systemy rodziny Windows działają na serwerach, systemach wbudowanych oraz na komputerach osobistych, z którymi są najczęściej kojarzone. Objective-C – rozszerzenie języka C o możliwości obiektowe, wzorowane na Smalltalku. Objective-C przyjął drogę całkowicie odmienną od C++. Jest używany głównie w frameworku Cocoa w systemie Mac OS X oraz w iOS.

Podstawowymi składnikami MinGW są kompilatory GCC, zestaw programów binutils (zawierający m.in. kompilator zasobów windowsowych windres) oraz zestaw plików nagłówkowych i bibliotek charakterystycznych dla platformy Windows. MinGW pozwala na kompilację kodu źródłowego napisanego w językach programowania C++, C, Fortran77, Java, Ada oraz Objective C do kodu wykonywalnego (EXE) lub, zależnie od potrzeb, plików obiektowych, bibliotek statycznych lub bibliotek dynamicznych (DLL). Przy użyciu MinGW można kompilować większość programów przeznaczonych dla systemu Windows i wykorzystujących różne zaawansowane biblioteki, zarówno komercyjne, jak i typu Open Source, np. w32API, Qt, DirectX, OpenGL, SDL czy wxWidgets.

make – program powłoki systemowej automatyzujący proces kompilacji programów, na które składa się wiele zależnych od siebie plików.DirectX – zestaw funkcji API wspomagających generowanie grafiki (dwu- i trójwymiarowej), dźwięku oraz innych zadań związanych zwykle z grami i innymi aplikacjami multimedialnymi.

Programy skompilowane z użyciem MinGW do komunikacji z systemem operacyjnym wykorzystują bezpośrednio standardowe biblioteki dynamiczne systemu Windows i nie używają emulacji standardu POSIX. Ponadto MinGW korzysta z bibliotek Microsoft Visual C++ Runtime, a nie GNU C Library. Są to podstawowe cechy odróżniające MinGW od Cygwina.

DLL (z ang. Dynamic-Link Library - biblioteka łączona dynamicznie) – w środowisku Microsoft Windows biblioteka współdzielona (z ang. shared library), która przechowuje implementacje różnych podprogramów programu lub zasoby programu. Podprogramy i zasoby zawarte w bibliotece DLL mogą być wykorzystane bezpośrednio lub pośrednio (za pośrednictwem innej biblioteki DLL) przez dowolny plik wykonywalny, sama biblioteka DLL nie jest samodzielnym programem.EXE (od ang. executable [file], [plik] wykonywalny; pot. „egzek” od skr. exec) – rozszerzenie nazwy pliku wykonywalnego w systemach Microsoft Windows i MS-DOS; pliki o tym rozszerzeniu w zamierzeniu zawierają przede wszystkim skompilowany kod wykonywalny programu, choć może zawierać także inne zasoby (np. dotyczące np. struktury okien, ikony, obrazy, dźwięki, itp.).

MinGW może być też używany do kompilowania i przenoszenia do systemu Windows bibliotek napisanych dla innych systemów operacyjnych, np. Linuksa, w tym bibliotek z projektu GNU. Ponieważ MinGW nie jest zgodny ze standardem POSIX, może nie kompilować programów pisanych dla tej platformy. Kompilacja programów lub bibliotek przy pomocy skryptu configure i/lub programu make wymaga doinstalowania pakietu MSYS (Minimal SYStem). Pakietu tego można też używać niezależnie od MinGW jako alternatywy dla standardowej konsoli systemu Windows (cmd) lub jako namiastki konsoli linuksowej. W szczególności MSYS udostępnia powłokę bash.

wxWidgets - biblioteka klas C++, która pozwala na tworzenie oprogramowania dedykowanego dla różnych środowisk graficznych.Definicja intuicyjna: Kod źródłowy to zapis programu komputerowego w formie czytelnej dla człowieka umożliwiający jego modyfikację i rozwój.

Ze względu na powyższe cechy, MinGW jest powszechnie wykorzystywany w zintegrowanych środowiskach programistycznych dla platformy Windows.

Zobacz też[ | edytuj kod]

  • Cygwin
  • DJGPP
  • Linki zewnętrzne[ | edytuj kod]

  • Oficjalna strona MinGW
  • Oficjalna strona mingw-w64
  • MinGWiki




  • Warto wiedzieć że... beta

    System operacyjny (ang. Operating System, skrót OS) – oprogramowanie zarządzające systemem komputerowym, tworzące środowisko do uruchamiania i kontroli zadań użytkownika.
    OpenGL (ang. Open Graphics Library) – specyfikacja uniwersalnego API do generowania grafiki. Zestaw funkcji składa się z 250 podstawowych wywołań, umożliwiających budowanie złożonych trójwymiarowych scen z podstawowych figur geometrycznych.
    Pliki nagłówkowe – przy kompilatorze języka C i pochodnych (C++ itp.) pliki źródłowe o rozszerzeniu "h" (w C++ powinno się dla odróżnienia stosować "hpp", ale w praktyce najczęściej spotykane jest nadal rozszerzenie "h") zawierające opis interfejsu modułu: deklaracje zmiennych, funkcji, klas i innych struktur danych. Używa się ich po to, by nie trzeba było przy każdej najmniejszej zmianie w implementacji jednego modułu rekompilować wszystkich innych odwołujących się do niego. W nowszych językach takich jak Java czy C# nie ma już potrzeby stosowania plików nagłówkowych.
    Fortran (od wersji 90 do aktualnej) a dawniej FORTRAN (do wersji 77 włącznie) (od ang. FORmula TRANslator) – język programowania pierwotnie zaprojektowany do zapisu programów obliczeniowych, był niegdyś językiem proceduralnym, obecnie jest nadal rozwijanym językiem ogólnego przeznaczenia. Umożliwia programowanie strukturalne, obiektowe (Fortran 90/95), modularne i równoległe (Fortran 2008). Jego zastosowaniami są, między innymi, obliczenia naukowo-inżynierskie, numeryczne, symulacja komputerowa itp.
    Otwarte oprogramowanie (ang. open source movement, dosł. ruch otwartych źródeł) – odłam ruchu wolnego oprogramowania (ang. free software), który proponuje nazwę open source software jako alternatywną dla free software, głównie z przyczyn praktycznych, a nie filozoficznych.
    GNU Autoconf - zestaw makr M4 stworzonych w ramach projektu GNU, które służą do generowania skryptów powłoki mających zająć się procesem kompilacji programów komputerowych rozprowadzanych w formie kodu źródłowego.
    SDL (ang. Simple DirectMedia Layer) – biblioteka programistyczna ułatwiająca tworzenie gier oraz programów multimedialnych.

    Reklama