Windows 7 makinesine gcc nasıl kurulur?


119

Windows 7 makinemde MinGW var. Tam gcc for C derleyicisini kurmak ve kullanmak istiyorum. Bu amaç için önceden derlenmiş tek bir hazır kurulum dosyası olmadığını buldum. Aşağıdaki sayfayı kontrol ettim: http://gcc.gnu.org/install/ Zor ve anlama seviyemin üzerinde buluyorum. Lütfen herhangi biri, bağlantılarla birlikte adım adım rehberlik sağlayabilir mi?

Yanıtlar:


97

DÜZENLEME Yakın zamana kadar MinGW-w64, alet zinciri oluşturma projelerinden birini "benimsedi". İndirilebilir dosyalar burada bulunabilir . Yükleyici çalışmalı ve ihtiyacınız olan bir sürümü seçmenize izin vermelidir.

Qt SDK'nın aynı araç zinciriyle birlikte geldiğini unutmayın. Dolayısıyla, Qt'de geliştirme yapıyorsanız ve SDK'yı kullanıyorsanız, sadece birlikte gelen araç zincirini kullanın.

Güncel araç zincirlerine sahip başka bir alternatif ise ... harhar ... bir Microsoft geliştiricisinden geliyor, STL'den başkası değil (Stephan T. Lavavej, MSVC ++ Standard Library'nin bakımcısı için yerinde bir isim değil!). Burada bulabilirsiniz . Boost içerir.

Önceden oluşturulmuş bağımlılıkları önemsiyorsanız oldukça kullanışlı olan başka bir seçenek de bir Unix kabuğu (Windows yol adları ve benzeri ile daha iyi çalışacak şekilde değiştirilmiş bir Cygwin çatalı) sağlayan MSYS2'dir ve ayrıca bir GCC sağlar. Genellikle biraz geride kalır, ancak bu iyi paket yönetim sistemi ve kararlılığı ile telafi edilir. Ayrıca, eğer böyle bir şeyi önemsiyorsanız, libc ++ ile işlevsel bir Clang sağlarlar.

Aşağıdakileri referans için bırakıyorum, ancak aşağıda ayrıntıları verilen sınırlamalar nedeniyle MinGW.org'u kullanmamanızı şiddetle tavsiye ediyorum. TDM-GCC (MinGW-w64 sürümü), maksimum uyumluluk için her zaman vanilya GCC'yi kullanmanızı tavsiye etsem de, özel durumunuzda yararlı bulabileceğiniz bazı hackler sağlar.


Windows için GCC şu anda iki proje tarafından sağlanmaktadır. Her ikisi de, GCC'nin Visual Studio dosyalarıyla çalışmaması nedeniyle gerekli olan Windows SDK'nın (üstbilgiler ve kitaplıklar) kendi uygulamalarını sağlar.

  1. @Mat'ın sizi zaten işaret ettiği eski mingw.org. Yalnızca 32 bitlik bir derleyici sağlarlar. İhtiyacınız olan indirmeler için buraya bakın :

    • Binutils, bağlayıcı ve kaynak derleyicidir vb.
    • GCC derleyicidir ve çekirdek ve dil paketlerine bölünmüştür
    • GDB hata ayıklayıcıdır.
    • runtime library sadece mingw.org için gereklidir
    • Mingw32-make'i ayrı olarak indirmeniz gerekebilir.
    • Destek için mingw-users@lists.sourceforge.net deneyebilirsiniz (dostça yanıtlar beklemeyin)

    Alternatif olarak, mingw-get'i indirin ve kullanın.

  2. Adından da anlaşılacağı gibi, daha yeni mingw-w64, 64 bitlik bir varyant da sağlar ve gelecekte umarım bir miktar ARM desteği sunar. Kullanıyorum ve CRT'leri ile alet zincirleri oluşturdum. Kişisel ve otomatik derlemeler burada "Win32 / 64'ü hedefleyen Araç Zincirleri" altında bulunur . Ayrıca Linux'tan Windows'a çapraz derleyiciler sağlarlar. Önce kişisel bir yapı denemenizi öneririm, daha eksiksizler. Benimkini (rubenvb) GCC 4.6 ila 4.8 için deneyin veya GCC 4.4 ve 4.5 için sezero'ları kullanın. İkimiz de 32 bit ve 64 bit yerel araç zincirleri sağlıyoruz. Bu paketler yukarıda listelenen her şeyi içerir. Şu anda "MinGW-Builds" yapılarını tavsiye ediyorum, çünkü bunlar şu anda "resmi yapılar" olarak onaylanıyor ve bir yükleyici ile birlikte geliyor (yukarıya bakın).

    Destek için, mingw-w64-public@lists.sourceforge.net adresine bir e-posta gönderin veya sourceforge.net aracılığıyla forumda yayınlayın.

Her iki projenin de dosyaları sourceforge'da listelenmiştir ve yapmanız gereken tek şey ya yükleyiciyi çalıştırmaktır (mingw.org durumunda) ya da uygun bir sıkıştırılmış paketi indirip çıkarmak (mingw-w64 durumunda).

Çok sayıda "resmi olmayan" araç zinciri kurucusu var, en popülerlerinden biri TDM-GCC. Resmi / yamalanmamış araç zincirleriyle ikili uyumluluğu bozan yamalar kullanabilirler, bu yüzden onları kullanırken dikkatli olun. Resmi sürümleri kullanmak en iyisidir.


6
Cevabınız kesinlikle eksiksiz görünüyor ama hepsini anlamadım. Cevabınızdaki birçok terim benim için yenidir .. Niyetim gcc c derleyicisi, bağlayıcı, başlık dosyaları ve kitaplık dosyaları elde etmektir. GCC 4.6 için kişisel yapınızı indirdim. şimdi ne yapacağım? lütfen bana tahammül edin :-)
KawaiKx

9
@Saurabh: Sorun değil, kelimeler açısından doğru olmaya çalıştım. Şimdi paketi, örneğin C:` so that C: \ mingw64 \ bin` (veya C: \ mingw32 \ bin ) contains gcc.exe için . Then, open a cmd.exe command prompt, and execute PATH = C: \ mingw64 \ bin;% PATH% 'olarak ayarlayın. Ardından mingw32'yi çağırabileceksiniz. Bu komut satırından -make, gcc, gdb, vb. Onu kullanan programlar (cmake, Qt Creator, Codeblocks gibi) PATH'de de buna ihtiyaç duyar. Sistem / kullanıcı çapında bir PATH değişikliğine ihtiyaç duymanız durumunda, Kontrol Paneli-> Sistem'e gidin -> Gelişmiş-> Ortam değişkenleri ve orada PATH ekleyin veya değiştirin.
rubenvb

1
bunu yaptım. iyi çalışıyor. çok teşekkürler .. Windows makinesine gcc derleyicisini kurarken neden bu kadar güçlük var? başlangıçta x86 platformu için tasarlanmamış mıydı?
KawaiKx

4
Windows için GCC / binutils ile ilgilenen en fazla 4-5 geliştirici vardır. Harika bir iş çıkarırlar, ancak araçlarını teslim etmeyi topluluğa bırakırlar. Burada yanlış anlamayın: TDM uzun zamandır ortalıkta ve kullanışlı bir yükleyici sağlıyor, ancak telif hakkı sorunları nedeniyle yamaları yukarı akışa göndermiyor. Codeblocks, IDE ile bir MinGW araç zinciri sunar, Qt de öyle. Ancak hiçbiri 64-bit vermiyor :). GCC'nin kendisi, Cygwin / MSYS gibi bir Unix ortamı veya daha iyisi: Linux gerektirir. Oluşturma süreci basit değildir. Ancak ne yapacağınızı bildikten sonra yüklemek çok da güç değil.
rubenvb

1
@rubenvb, Mingw64'ün artık bir şeyler seçmenize izin veren bir yükleyicisi olduğunu fark ettim. Bu kişisel bir yapı oluşturmaktan daha kötü bir fikir mi?
batbrat

26

Mingw-get'i indirin ve basitçe yayınlayın:

mingw-get install gcc.

Bkz Başlarken sayfasını.


2
bu kurulum gcc standart C kütüphanesini kurmaz .. onun yerine msvcr *** kullanır. neden öyle? gcc standart C kitaplığının x86 olmayan yongalara yönelik nesne kodlarını içerdiği için mi?
KawaiKx

3
çünkü pencerelerdeki GCC'nin MinGW portu, Windows standart C kitaplığını kullanır. Başka bir C kütüphanesi kullanmak istiyorsanız, cygwin'e bakın (newlib kullanır). Windows'ta GLIBC alma konusunda çok şansınız olduğundan emin değilim (Ben de gerçekten noktayı görmüyorum).
Mat

1
"Pencerelerde GCC'nin MinGW portu" ile tam olarak neyi kastediyorsunuz? üzgünüm, aptalca gelebilir ama bu şartlarda
yeniyim

2
Bu, MinGW tarafından Windows ortamlarında çalışmak ve hedeflemek için üretilen GCC sürümü anlamına gelir.
Mat

11
  1. Paketi buradan C: \ konumuna çıkarın ve kurun

  2. C:\MinGW\binGcc.exe'yi içeren yolu kopyalayın .

  3. gidin Control Panel->System->Advanced>Environment variablesve PATH ekleyin veya değiştirin. (sadece ';' ile birleştirin)

  4. Ardından, open a cmd.exe command prompt(Windows + R ve cmd yazın, zaten açıksa, yol değişikliğini almak için lütfen kapatıp yeni bir tane açın)

  5. klasörü dosya yolunuza göre değiştirin cd D:\c code Path

  6. yazın gcc main.c -o helloworld.o. Kodu derleyecektir. içinC++ use g++

./helloworldProgramı çalıştırmak için 7 yazın .

Zlib1.dll eksikse, buradan indirin


6

Mat'ın cevabını takiben (Cygwin'i kullanın), işte bazı ayrıntılı talimatlar: Windows'a gcc'nin yüklenmesi İstediğiniz paketler gcc, gdb ve make'dir. Cygwin yükleyici, ihtiyaç duyduğunuzda ek paketler kurmanıza izin verir.


Cygwin'i ve gerekli paketleri kurdum. Ayrıca Windows komut satırından gcc, gdb ve make'in erişilebilir olduğunu doğruladım. Ama yine de rayların kurulumu aynı hatayla başarısız oluyor! Cygwin ve Rails'i Windows'ta başarıyla deneyen oldu mu?
Vishal Biyani

Ben çalıştırdığınızda Ayrıca, gcckomuta istemi, ben, erişim engellendi olsun emin niçin
Vishal Biyani

3
Bugünlerde, muhtemelen Cygwin yerine Oracle's VirtualBox ( virtualbox.org ) veya VMWare gibi bir şey kullanacağım . Ardından aynı makinede her iki işletim sistemini de çalıştırabilirsiniz. Rails'e gelince, Rails Installer'ı denediniz mi? railsinstaller.org
michaelok

@Michaelok bahşiş için teşekkürler, kesinlikle deneyeceğim
Vishal Biyani

Ben de bulamadım, bu yüzden ana Cygwin sayfasına güncelledim. Yükleyicinin en zor yanı, doğru paketleri seçtiğinizden emin olmaktır. Gcc hakkında şunu söyleyen talimatlardan: "Varsayılan olarak, setup.exe yalnızca Temel kategorisindeki paketleri ve bunların bağımlılıklarını yükleyerek minimum bir Cygwin kurulumuna neden olur. gcc olarak (Devel kategorisinde bulacaksınız) "
michaelok

1

Windows'a gcc yüklemek için msysgit kullanıyorum, ihtiyacınız olabilecek her şeyi yükleyen güzel bir yükleyici var. Çoğu geliştirici derleyiciden daha fazlasına ihtiyaç duyar, örneğin kabuk, kabuk araçları, make, git, svn, vb. Msysgit tüm bunlarla birlikte gelir. https://msysgit.github.io/

düzenleme: Şimdi msys2 kullanıyorum. Msys2 kullanırpacman paketleri yüklemek için Arch Linux'u ve msys2 uygulamaları, 32 bit yerel uygulamalar ve 64 bit yerel uygulamalar oluşturmak için üç ortam içerir. (Muhtemelen 32 bit yerel uygulamalar oluşturmak istiyorsunuz.)

https://msys2.github.io/

Ayrıca tam monty'ye geçebilir ve code :: Blocks veya bir derleyici ile birlikte gelen başka bir gui editörü kurabilirsiniz. Vim kullanmayı ve make yapmayı tercih ederim.


Msysgit hala sizin için çalışıyor mu? Bu URL , gcc'den bahsetmediğim Windows için Git'e yönlendiriyor . Windows için Git ile kötü şansım oldu ama bu başka bir hikaye olabilir. Ayrıca "msysGit, Windows 2.x için Git tarafından değiştirildi" mesajı da var
Bob Stein

Şimdi msysgit yerine msys2 kullanıyorum. msys2.github.io Cevabımı güncelledim.
Sam Watkins
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.