Windows’da gcc Komutu ile C Kodu Nasıl Derlenir ve Çalıştırılır?

CompilerVisual Studio CodegccCBinary Code

Monday, January 23, 2023

Bu yazımda kendi öğrenme sürecimde kafa karışıklılığı yaşadığım bir konu olan C kodunun Windows ortamında nasıl derlenip çalıştırılacağından bahsetmek istiyorum.

Bir C kodunun Windows ortamında çalıştırılabilmesi için öncelikle derlenmesine(compile) ihtiyacı vardır. Bunun için bir C derleyicisi(compiler) olan GCC’yi indirmemiz gerekiyor. Fakat GCC’yi indirebilmek için de MinGW’yi bilgisayarımıza kurmalıyız. Kafanız karışmasın çünkü bunların ne olduklarını aşağıda açıklıyor olacağız.

MinGW, GCC’yi içeren bir geliştirme araçları paketidir ve GCC, bu paket içindeki bir C derleyicisidir.
GCC, “GNU Compiler Collection”nın kısaltmasıdır. Buradaki GNU ise “GNU’s Not Unix (GNU, Unix Değildir)” ifadesinin bir kısaltması olarak kabul edilir.

Bu detaylara girmeden de bir C kodunun nasıl derlenebileceği ve konsola yazdırılabileceği anlatılabilirdi fakat kavramların konuyu anlama noktasında önemli olduğunu düşündüğüm için kısaca ne olduklarından bahsetmek istedim.

Hadi şimdi MinGW’yi indirip C kodumuzun derleyicisi olarak kullanacağımız GCC’yi nasıl kuracağımıza bakalım.

Aşağıdaki link üzerinden MinGW’yi indiriyoruz ve görsellerdeki adımları takip ediyoruz.
- https://sourceforge.net/projects/mingw/

Install ve Continue diyerek devam ediyoruz.

Ardından Karşımıza aşağıdaki ekran çıkıyor. Buradaki mingw32-base-bin ve mingw32-gcc-g++-bin isimli paketleri sağ tık yaparak Mark for Installation ile seçiyoruz, Apply Changes ile devam ediyor ve Apply ile indirme işlemini başlatıyoruz.

İndirmek için mingw32-base-bin ve mingw32-gcc-g++-bin isimli paketleri seçeceğiz

Sağ tık yapıp Mark for Installation ile seçiyoruz

Installation sekmesinden Apply Changes ile devam ediyoruz

Apply ile indirme işlemini başlatıyoruz

İndirme işlemi tamamlandıktan sonra close diyerek mevcut sayfaları kapatabilirsiniz.

Yukarıda yapmış olduğumuz indirme işlemindeki tüm dosyalar C:\MinGW\bin isimli klasörün içerisine yüklenmiş oldu.
Bu işlemlerden sonra Yerel Disk (C:)MinGWbin klasörlerini sırasıyla açarak buradaki dosya uzantısını(C:\MinGW\bin) kopyalıyoruz.

C:\MinGW\bin uzantısını kopyalıyoruz

Denetim MasasıSistem ve GüvenlikSistemGelişmiş Sistem Ayarları’nı seçerek devam ediyoruz.

Sistem ve Güvenlik

Gelişmiş Sistem Ayarları

Ardından Ortam Değişkenlerine tıklıyoruz. Açılan sayfanın alt kısmında bulunan Sistem Değişkenleri içerisinde, değişken ismi Path olan değişkeni seçip Düzenle Yeni diyerek yukarıda kopyaladığımız dosya uzantısını(C:\MinGW\bin) buraya yapıştırıyoruz ve Tamam diyerek açık olan sayfaları kapatıyoruz.

Ortam Değişkenlerine tıklayıp açılan sayfada Sistem değişkenleri içerisindeki Path isimli değişkeni seçip düzenle diyoruz

Yeni diyerek yukarıda kopyaladığımız dosya uzantısını(C:\MinGW\bin) buraya yapıştırıyoruz

Artık Visual Studio Code editörünü açıp yazdığımız kodları compile(derlemek) edebiliriz.

Örnek olması ve konunun pekiştirilebilmesi açısından C dilinde konsola bir şeyler yazdıralım.

  1. İlk olarak “deneme.c” isminde bir C dosyası oluşturdum.
  2. Konsola istediğimiz şeyi yazdırabilmek için printf fonksiyonunu kullanacağız ve bu fonksiyonu kullanabilmek için de #include <stdio.h> diyerek stdio.h isimli kütüphaneyi C dosyamıza import(dahil) ediyoruz.

Ardından terminale gcc deneme.c komutunu yazarak kodumuzu Binary Code’a yani Makine Koduna compile ediyor(derliyor, çeviriyor) ve a.exe isimli dosyaya sahip oluyoruz.

Son olarak ./a.exe ile kodumuzu çalıştırdığımızda “Hello World!” çıktımızı terminalde almış oluyoruz.

Umarım istifade ettiğiniz faydalı bir yazı olmuştur. Eksik veya hatalı olduğunu düşündüğünüz kısımlar olursa lütfen yorumlarda belirtmekten çekinmeyin.

💬 Aşağıdaki linkler üzerinden bana ulaşabilirsiniz. 👇

Bir sonraki yazıda görüşmek üzere! 🖐

Kaynakça:

https://www.scaler.com/topics/stdio-h-in-c/

https://www.gnu.org/home.tr.html

https://www.incredibuild.com/integrations/gcc#:~:text=What%20is%20GCC%3F,Go%2C%20Fortran%2C%20and%20D.

https://stackoverflow.com/questions/7790262/a-simple-explanation-of-what-is-mingw