MinGW
Tämän artikkelin tai sen osan kieliasua on pyydetty parannettavaksi. Voit auttaa Wikipediaa parantamalla artikkelin kieliasua. |
MinGW (Minimalist GNU for Windows) on GCC-kääntäjän Windows-versio. MinGW:n mukana tulee C-, C++-, Fortran- ja ADA-kääntäjät sekä GNU Binutils -ohjelmat. Lisäksi ja Windows API-otsikkotiedostot ja tuontikirjastot ovat osa pakettia. On huomattava, että MinGW ei ole osa GCC-projektia, vaan on oma irrallinen projektinsa.
Koska MinGW on komentorivipohjainen, se esiintyy useimmiten yhdessä ikkunoidun kehitysympäristön, kuten CodeBlocksin, Orwell Dev-C++:n tai Qt:n kanssa.
MinGW on ilmainen myös kaupalliseen käyttöön, mutta ilman takuita[1]. MinGW:n otsikkotiedostot ovat public domainia ja kääntäjä työkaluineen GPL-lisensoitua. MinGW:n mukana tulee GNU:n C, C++ ja Fortran.
MinGW ei ole edelleenkään yhtä suosittu, helppokäyttöinen ja tehokas kuin Microsoftin Visual C++-kääntäjälähde?, mutta sen valttina on ilmaisuus ja kuuluminen yleisesti käytettyyn GCC-perheeseen, ja siksi se on jossain määrin yleistynyt 2000-luvulla. MinGW-kääntäjän uusimman version sai vuonna 2013 binaarina sekä 32-bittiselle että 64-bittiselle Windowsille.
Vaikka MinGW on GCC-kääntäjä, sen perusrajapinta on Windowsin API, ei POSIX[2].
Käyttöliittymiä
MinGW:tä voi käyttää suoraan komentoriviltä, mutta yleistä on käyttää sitä jonkin kehitysympäristön kautta. Esimerkkeinä tavallisimmista MinGW:tä tukevista kehitysympäristöistä ovat CodeBlocks, Orwell DevC++[3], Qt[4] sekä varsin kevyt Kuzya[5]. Näistä CodeBlocks ja Orwell DevC++ on saatavilla MinGW:n TDM GCC version kanssa ja Qt tavallisella MinGW:llä.
Vertailu Cygwiniin ja Visual C:hen
Tähän artikkeliin tai osioon ei ole merkitty lähteitä, joten tiedot kannattaa tarkistaa muista tietolähteistä. Voit auttaa Wikipediaa lisäämällä artikkeliin tarkistettavissa olevia lähteitä ja merkitsemällä ne ohjeen mukaan. |
MinGW:n vuodesta 1998 alkaen julkaistut ensimmäiset versiot jotka kulkivat nimellä mingw32 on kehitetty Cygwinin varhaisesta versiosta, mutta toisin kuin POSIX-pohjainen Cygwin, tukee suoria Windows API-kutsuja POSIX:in sijaan.
MinGW ei ole yhtä käytetty kääntäjä kuin Visual C++, mutta monissa tapauksissa senkin käyttöä voi kokeilla, koska ainakin muutamat ohjelmakirjastot tukevat sitä. MinGW on taatusti ilmainen kehitysalusta. MinGW:n käyttö saattaa olla paikallaan silloin, kun siirtää valmista koodia esim Linuxista Windowsiin.
Muun muassa 3D-pelintekokirjasto Irrlicht kääntyy CodeBlocks+MinGW:llä. Myös Ogren saa käännettyä CMaken avulla CodeBlocks+MinGW:llä käännettävään muotoon. Ainakin teoriassa MinGW tukee monia ohjelmointikirjastoja, joita gcc yleisemmin tukee. Näitä ovat mm fonttikirjasto FreeType.
MinGW on Visual C:hen verrattuna hieman hitaampi kääntämään ja tuottaa yleensä hieman hitaampaa koodia.lähde? MinGW teettää myös käyttäjällään monesti enemmän työtä kuin Visual C++ mm koska siitä puuttuu useasti valmiita binaarikirjastoja. Tällöin MinGW voi olla pahimmassa tapauksessa käyttäjälleen todella painajaismaisen hidas työkalu verrattuna Visual C++:aan. Eräs MinGW:n perusongelma on se, että se on osaksi Unix-tyylinen GCC, osaksi Windowsille sovitettu kääntäjä, jolloin molempien ominaisuuksia on menetetty.
Koska MinGW:n käyttämä C-kirjasto on Microsoftin MSVCRT, se ei ole täysin yhteensopiva GCC:n C98:n ja C99:n kanssa. Osin tätä ongelmaa on koetettu ratkaista kehittämällä libmingwex-kirjasto, mutta tämäkään ei tuo täyttä yhteensopivuutta.
TDM ja muita kehitelmiä
MinGW:n versionumero vastaa GCC:n versiota, mutta vastaava MinGW julkaistaan yleensä huomattavalla viiveellä. MinGW:stä on monia epävirallisia "distroja", kuten esimerkiksi CodeBlocksinkin mukana tukeva TDM-GCC[6], jolla voi varsinaisesta MinGW:stä poiketen kääntää myös 64-bittisiä sovelluksia ja kirjastoja. TDM-GCC:stä suositellaan yleensä käyttämään niin sanottua SJLJ-pakettia DW2-paketin sijaan, jos ei ole tarkempia vaatimuksia[7].
MinGW:stä on myös muita distroja, kuten nuwen.net[8], Win32 Devkit[9] ja RubenV[10].
Katso myös
Aiheesta muualla
- Codeblocks Downloads NOTE: The codeblocks-12.11mingw-setup.exe file includes the GCC compiler and GDB debugger from TDM-GCC (version 4.7.1, 32 bit).
- Minimalist GNU for Windows Official
- [4] MinGW MSYS
- [5] MinGW MSYS DTK
- MinGW w64 MinGW:n w64-haara
- MinGW SourceForge
- [6] MSYS SourceForge
- [7] MsysDTk SourceForge
Viitteet
- ↑ Copyright (c) 2012 MinGW.org project
- ↑ [http://www.mingw.org/ Welcome to MinGW.org Home of the MinGW and MSYS Projects]
- ↑ Orwell Dev-C++
- ↑ Qt Project MinGW
- ↑ [1] Kuzya
- ↑ TDM-GCC
- ↑ [2]
- ↑ MinGW Distro - nuwen.net
- ↑ Win32 DevKit
- ↑ [3]