Windows için C derleyicisi? [kapalı]


125

Linux üzerinde C derleyicim olarak gcc kullanarak iyi çalışıyorum ama bir Windows çözümü istiyorum. Herhangi bir fikir? Bloodshed'den Dev-C ++ 'ya baktım ama daha fazla seçenek arıyorum.


2017'de piyasaya sürülen Linux için Windows Alt Sistemine göz atın. Bu, gcc gibi yerel linux araçlarını doğrudan Windows üzerinde çalıştırmanıza olanak tanır. Bakınız: docs.microsoft.com/en-us/windows/wsl/install-win10 ve howtogeek.com/249966/…
Evan Rosica

Yanıtlar:


79

Sen indirerek Windows üzerinde GCC kullanabilirsiniz MingW ( durdurulan ) ya da onun halefi MinGW-W64 .


1
stackoverflow.com/questions/29205033/… - Ancak MinGW'yi Windows'ta kullanmak LibVLC ve Gstreamer'ın üstesinden gelmek için sorunları çözmez. MinGW'yi kullanarak yürütülebilir dosyalar çöktü. Daha iyi bir çözüm var mı?

1
Mingw harika bir proje olsa da, Windows exec derlemek istediğimde bana uymadı. Linux'ta.
Vijay Kumar Kanta

36

Sen alabilirsiniz Visual C ++ Express Edition bir şey Win32 hedefleyen istiyorsanız, düz Microsoft'tan. Aksi takdirde, başka bir yerde önerildiği gibi MinGW veya lcc.


3
Visual Studio harikadır, ancak sınıfta linux / gcc kullanıyorlarsa muhtemelen en iyi seçenek değildir.
Joel Coehoorn

1
Sorun, C ve C ++ 'nın farklı diller olmasıdır. C kodu her zaman C ++ 'da çalışmaz.
tloach

9
Visual C ++ 'ın ayrıca bir C modu derleyicisine sahip olduğuna inanıyorum.
Alex M

4
Stroustrup bunu burada açıklığa kavuşturuyor: public.research.att.com/~bs/bs_faq.html#C-is-subset Bence en kötü kısım, karakterler ve ints için sizeof () uyuşmazlıkları artı C ++ 'da eklenen anahtar kelimeler.
Alex M

17
@Richard'ın yorumlarda söylediği gibi: VC ++, C99 özelliklerinden yoksundur.
jfs

23

GCC her yerde bulunur. Düzinelerce topluluktaki binlerce kişi tarafından güvenilir ve iyi anlaşılmıştır.

Visual Studio belki de şimdiye kadar geliştirilmiş en iyi IDE'dir. Altında harika bir derleyici var. Ancak kesinlikle Windows'a özeldir.

Sadece oynuyorsanız, GCC'yi alın - ücretsizdir. Birden fazla platformdan endişe ediyorsanız, bu GCC'dir. Ciddi bir Windows geliştirmeden bahsediyorsanız, Visual Studio'yu edinin.


Şimdi Visual Studio Code, aşağı yukarı aynı işlevselliğe sahip çapraz platform olan var.
Dr_Zaszuś

19

Gcc'yi her zaman cygwin aracılığıyla kullanabilirsiniz.


13
Bu, uygulamanızı, bence gerçekten rahatsız edici olan Cygwin DLL'ye bağlar.
Alex M

Kabul ediyorum, ancak uygulamanın bir yükleyicisi varsa, dll'yi paketleyebilir.
UnkwnTech

13
Cygwin altında derlerken --mno-cygwin seçeneğini kullanın. Bu, MinGW ikili dosyalarını derlemesini sağlar; Cygwin DLL'ye gerek yok.
Colin

5
-mno-cygwinartık desteklenmiyor - bunun yerine platformunuza uygun MinGW çapraz derleyici paketlerini kurun
Christoph

17

Windows için başka bir ücretsiz C derleyicisi var: Pelles C.

Pelles C, Windows ve Windows Mobile için eksiksiz bir geliştirme kitidir. Diğer şeylerin yanı sıra, hem Windows hem de Windows Mobile için bir optimize C derleyicisi, bir makro derleyici, bir bağlayıcı, bir kaynak derleyici, bir mesaj derleyici, bir yapım aracı ve kurulum oluşturucuları içerir. Aynı zamanda proje yönetimi, hata ayıklayıcı, kaynak kodu düzenleyici ve diyaloglar, menüler, dize tabloları, hızlandırıcı tabloları, bitmapler, simgeler, imleçler, animasyonlu imleçler, animasyon videoları (sessiz AVI'ler) için kaynak düzenleyiciler içeren entegre bir geliştirme ortamı (IDE) içerir, sürümleri ve XP bildirimleri.

URL: http://www.smorgasbordet.com/pellesc/


12

Ben şahsen MinGW'yi (Bloodshed'ın kullandığı) Code Blocks IDE ile kullanmayı araştırıyordum .

Ayrıca Digital Mars C / C ++ derleyicisini kullanmayı düşünüyorum.

Her ikisi de iyi kabul görüyor gibi görünüyor.


Dijital Mars C / C ++ bir süredir ortalıkta ve iyi durumda. Ancak, çok yaygın olmayan bir nesne dosyası biçimi kullandığından kitaplıklar için bağlantı sorunları yaşarsınız. Kaynak kodunu alabiliyorsanız, bu o kadar da sorun değil. Ayrıca, onları hiç kullanmadım ama dosya formatı dönüştürücü araçları var.
BCS

8

Daha iyi IDE olan ve MinGW GCC ile birlikte gelen Code :: Blocks'u deneyebilirsiniz ! Onu kullandım ve C / C ++ için çok iyi ücretsiz bir IDE.


@zeboidlund, Winxp sonrası sürümü nedir?
Pacerier

8

GCC teknik olarak linux'a özgü bir derleyici değildir. Standartlara uyumlu bir c / c ++ derleyicisidir ve günlük olarak Windows programları için kullanıyorum. Muhtemelen en iyisi, başka bir şeyle daha rahat hale gelene kadar kullanman.

GCC'nin MinGW dağıtımını kullanmanızı tavsiye ederim. Bu, programlarınızı standart bir kitaplık vb. Kullanarak Windows için yerel olarak derler.

Bir IDE arıyorsanız, iki tavsiyem var. Visual Studio, Microsoft sürümüdür ve sorunları olmasına rağmen , kodla çalışmak için mükemmel bir IDE'dir. Bununla birlikte, biraz daha hafif bir şey arıyorsanız, CodeBlocks da oldukça iyidir ve temelde yüklediğiniz herhangi bir derleyiciyi kullanabilme avantajına sahiptir (çeşitli GCC biçimleri ve Visual ile birlikte gelen Microsoft Derleyici dahil) Studio) ve proje dosyalarını diğer IDE'lerden açabilme. Artı, linux üzerinde de çalışır, böylece bu geçişi kendiniz için daha da kolaylaştırabilirsiniz.

Şahsen GCC'yi tercih ederim, ama bu sadece benim. Microsoft Çözümü'nü gerçekten istiyorsanız, gitmenin yolu VS'dir.


7

MinGW , windows için gcc'nin doğrudan bir çevirisi olacaktır veya bir IDE ile LCC , vanilla c (aşağı yukarı) kontrol etmek isteyebilirsiniz . Pelles C, lcc'ye dayanıyor gibi görünüyor ve kişisel olarak kullanmamış olsam da, biraz daha hoş bir IDE'ye sahip. Elbette MSVC'nin ücretsiz olan Express Edition'ı her zaman vardır , ancak bu sizin çağrınız.


6

Çoğu üniversite size Microsoft Dreamspark'a erişim sağlar .

Sınıfta GCC / Linux kullanıyorsanız, Ubuntu'yu kurmanız yeterlidir . Windows, C geliştirme için korkunç bir platformdur.


16
Windows, tüm geliştirmeler için korkunç bir platformdur . Senin için düzelttim.
notbad.jpeg

4
Bu, Visual Basic için en iyi seçenektir, bunu inkar edemezsiniz!
rlms

1
@sweeneyrod: Adil olmak gerekirse, Wine için uygulamalar geliştirmek için VB kullanmak oldukça iyi olurdu.
Matt Joiner

Üniversite aracılığıyla erişilen bir şeydeki sorun, ders bittikten sonra, elde etmek için çok çalıştığınız becerileri uygulamaya koymanın hiçbir yolu olmamasıdır.
richard1941

@ richard1941: Üniversitede amaç, sınıfta öğrendiğiniz teknolojileri tam olarak endüstriye uygulamak değil.
Matt Joiner

5

C'yi yapıyorsanız, C ++ 'yı değil, bir C derleyicisini kullanmaya dikkat edin. C'deki çoğu program bir C ++ derleyicisi kullanarak çalışacak olsa da, sorun olabileceği konusunda yeterince fark vardır. Gcc'yi cygwin üzerinden kullanmayı öneren kişilere katılıyorum.

DÜZENLE:
http://en.wikipedia.org/wiki/Compatibility_of_C_and_C%2B%2B bazı önemli farklılıkları gösterir


"Yeterince farklılıklar" üzerine ayrıntılar verebilir misiniz?
Mark


2
Herhangi bir C ++ derleyicisi ayrıca C'yi de derler - genellikle derleyici modu dosya adı uzantısına göre otomatik olarak seçilir, ancak her derleyicinin dosya adına bakılmaksızın C veya C ++ modunu zorlama seçeneği de vardır.
Michael Burr



3

Bu partiye geç kaldım, ancak Windows'ta gelecekteki herhangi bir C milleti için, Visual Studio C99 yerine C90'ı hedefliyor, bu da * nix'te elde edeceğiniz şeydir. Şu anda Cygwin ile birlikte Sublime Text 2 kullanarak Windows'ta C99'u hedefliyorum.




1

C'nin C ++ olmadığına işaret eden birkaç yorum yapılmıştır. Bu doğru olsa da, herhangi bir C ++ derleyicisinin de C'yi derleyeceği de doğrudur - genellikle derleyici modu dosya adı uzantısına göre otomatik olarak seçilecektir, ancak her derleyicinin dosya adına bakılmaksızın C veya C ++ modunu zorlama seçeneği de vardır.

Bu nedenle gcc, VC ++ Express, Digital Mars vb. İle en rahat olduğunuz ücretsiz C ++ derleyicisini seçin. En iyi emacs, vim, VC ++ Express, Code :: Blocks, Bloodshed'i sevdiğiniz IDE'yi kullanın - yine ne olursa olsun.

Bu araçlardan herhangi biri öğrenme için fazlasıyla yeterli olacaktır. Kişisel olarak, Windows hakkında sorduğunuza göre, VC ++ Express'i seçerdim - bu harika bir IDE, ücretsiz ve C programlarını gayet iyi bir şekilde derleyecektir.


1
Deneyimden bahsetmişken: VC korkunç bir C derleyicisidir. Var olan modern her şey VC'de geride kaldı. C ++ için harika ... C için korkunç.
zeboidlund

0

Sınıfta ne kullandığınıza bağlı.

Laboratuvarlar ve görevler linux içindeyse, muhtemelen bir MinGW çözümü istiyorsunuz. Pencerelerdeyse, Visual Studio Express'i edinin.


0

Okulunuzdan Visual Studio Student Addition'ın ücretsiz bir sürümünü alamıyor musunuz? Çoğu üniversitenin öğrencilere ücretsiz yazılım veren programları vardır.


1
Hayır o haklı. "Dream Spark" adında özel bir program var, bu kadar sinsi bir Microsoft olayını desteklemem.
Matt Joiner

0

Bloodshed'in Dev-C ++ 'sını mı kastediyorsun? Bu, sahne arkası derleyicisi olarak MinGW'nin Windows için gcc'sini kullanan C ++ için güzel bir görsel IDE'dir. Proje bir süredir terk edilmiş durumda (bence, bir C ++ IDE geliştirmek için Delphi'yi kullanmak, geliştiricilerin dikkatini çekmek için yapılacak çok aptalca bir şey), ancak sizi onu kullanmaktan ve MinGW'nin gcc it sürümünü güncellemekten alıkoyan hiçbir şey yok GPL lisanslı olmasının yanı sıra en sonuncuyu kullanır.


0

BloodShed'in DEV C ++, CygWin veya Visual C ++ Express kullanıyorum. Hepsi ücretsiz ve iyi çalışıyor. Benim için DEV C ++ 'nın en iyi ve en az ilginç olanı olduğunu buldum. Her derleyicinin kendine özgü tuhaflıkları ve farklılıkları vardır, birkaçını denemeniz ve en rahat olanı bulmanız gerekir. DEV C ++ 'nın editörde kullanılan yazı tiplerini değiştirmeme izin vermesi de hoşuma gitti. Proggy Programming yazı tiplerini seviyorum!


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.