Linux'ta GCC şu anlama gelir: GNU Derleyici Koleksiyonu . Çeşitli programlama dilleri için bir derleyici sistemdir. Esas olarak C ve C++ programlarını derlemek için kullanılır. Kaynak programın adını gerekli bir argüman olarak alır; hata ayıklama, uyarı, nesne dosyası ve kitaplıkları bağlama gibi dinlenme bağımsız değişkenleri isteğe bağlıdır.
GCC, GNU araç zincirinin temel bir bileşenidir. Linux çekirdeği ve GNU araçları gibi çeşitli açık kaynaklı projeler GCC kullanılarak derlenir.
GPL (Genel Kamu Lisansı) kapsamında dağıtılmaktadır. İlk versiyon, GCC 1.0 1987 yılında yayımlandı. Yalnızca C programlama dili içindi ancak aynı yıl kapsamı genişletildi. C++ programlama dili . Daha sonra Objective-C, Objective-C++, Fortran gibi diğer programlama dilleri için geliştirildi. Java , Ada, Go ve daha fazlası. En son sürümü, programlama dillerinin çok geliştirilmiş uygulamasına sahiptir.
GNU OS'nin resmi ortağıdır; bu nedenle Linux tabanlı sistemlerin standart derleyicisi olarak benimsenmiştir.
javafx
GCC'nin bileşenleri
GCC taşınabilir bir araçtır ve birçok işletim sisteminde çalışabilir. Ayrıca şuraya da taşınabilir: pencereler gibi bazı araçları kullanarak Cygwin, MinGW ve MinGW-W64 . GNU araç zincirinin önemli bir bileşeni olduğundan, uygulama ve işletim sistemleri geliştirmek için aşağıdaki bileşenleri içerir:
GNU Derleyici Koleksiyonu (GCC): C/C++ ve Objective-C/C++ gibi birçok dil için bir derleyici paketidir.
GNU'nun Yapılışı: Uygulamaları derlemek ve oluşturmak için kullanılan bir otomasyon aracıdır.
GNU Binutils: Gibi ikili yardımcı program araçlarını içeren bir pakettir. bağlayıcı Ve montajcı .
GNU Hata Ayıklayıcı (GDB). Uygulamalarda hata ayıklamak için kullanılır.
GNU Otomatik Araçları: Autoconf, Autoheader, Automake ve Libtool gibi bazı yardımcı araçları içeren bir yapı sistemidir.
GNU Bizonu: Lex ve yacc gibi bir ayrıştırıcı oluşturucudur.
GCC Derleyici Süreci
GCC, aşağıdaki dört adımda bir programı derler ve çalıştırılabilir hale getirir:
Ön işleme: Bu adımda, GNU ön işlemcisi (cpp.exe) kaynak kodunu içeren bir ara dosya oluşturur. Ön işlemci, başlıkları (#include) içerir ve makroları genişletir (#define). Aşağıdaki komutu göz önünde bulundurun:
cpp hello.c > hello.i
Yukarıdaki komut bir ara dosya 'hello.i.' yaratacaktır.
Derleme: Bu adımda, önceden işlenmiş kaynak kodu, belirli bir işlemci için derleme kodu halinde derlenir.
gcc -S hello.i
Yukarıdaki komut bir 'hello.s' derleme dosyası yaratacaktır. '-s' seçeneği, nesne kodu yerine montaj kodunun üretileceğini belirtmek için kullanılır.
Toplantı: Montaj kodu makine koduna dönüştürülür. Bir 'hello.o' nesne dosyası oluşturacaktır.
as -o hello.o hello.s
Bağlayıcı: Bağlayıcı (ld.exe), derleyici işleminin son adımıdır. Nesne kodunu kütüphane koduna bağlar ve çalıştırılabilir bir dosya üretir.
ld -o hello.exe hello.o
Yukarıdaki komut yürütülebilir bir 'hello.exe' dosyası oluşturacaktır.
GCC'nin Linux'a Kurulumu
Varsayılan olarak çoğu Linux dağıtımıyla birlikte gelir. Aşağıdaki komutu çalıştırarak bunu doğrulayabiliriz:
gcc -version
Yukarıdaki komut GCC aracının kurulu sürümünü gösterecektir. Yüklü değilse yüklemek için aşağıdaki adımları izleyin:
Adım 1: Paket listesini güncelleyin.
Paket listesini güncellemek için aşağıdaki komutu yürütün:
sudo apt update
Sistem yönetici şifresini isteyecek, şifreyi giriniz. Sistem paketini güncellemeye başlayacaktır. Aşağıdaki çıktı ekini göz önünde bulundurun:
Adım 2: Build-essential paketini yükleyin.
Gcc, g++ ve make yardımcı programı gibi çeşitli paketleri içerir. Yüklemek için aşağıdaki komutu yürütün:
sudo apt install build-essential
Yukarıdaki komut GCC yardımcı programı için gerekli paketleri kuracaktır. Artık makinemizde GCC yardımcı programını kullanabiliriz. Aşağıdaki çıktı ekini göz önünde bulundurun:
Adım 3: Kurulumu doğrulayın.
Kurulumu doğrulamak için gcc -version komutunu aşağıdaki gibi yürütün:
gcc --version
GCC yardımcı programının yüklü sürümünü gösterecektir. Sürümle ilgili daha spesifik ayrıntıları görüntülemek için '-v' seçeneğini kullanın. Aşağıdaki çıktıyı göz önünde bulundurun:
Burada GCC yardımcı programını başarıyla kurduk. Kullanmayı anlayalım. GCC'yi kullanarak bazı c programları oluşturup çalıştıracağız.
İlk C programını gcc ile çalıştırın
Temel oluştur c programı 'Selam Dünya!'. Bir 'hello.c' dosyası oluşturun ve içine aşağıdaki kodu koyun:
#include int main() { printf('Hello, world! '); return 0; }
Şimdi hello.c dosyasını aşağıdaki gibi derleyin:
gcc hello.c
Eğer hello.c dosyasını direkt çalıştırırsak hata verecektir. Çalıştırılabilir hale getirin, Linux sistemi için varsayılan çalıştırılabilir dosya a.out'tur. Dosyayı çalıştırmak için chmod komutunu aşağıdaki gibi yürütün:
aktör Ranbir Kapoor'un yaşı
chmod a+x a.out
Şimdi c programını şu şekilde çalıştırın:
./a.out
Aşağıdaki çıktıyı göz önünde bulundurun:
GCC komutu Örnekleri
gcc komutunun bazı yararlı örnekleri şunlardır:
Varsayılan olarak, gcc komutu nesne dosyasını şu şekilde oluşturur: 'a.dışarıda .' Varsayılan çıktı dosyası adını değiştirmek istiyorsanız, '-Ö' seçenek.
Temel gcc komutunu çalıştıralım:
gcc hello.c
Yukarıdaki komut 'a.out' nesne dosyasını oluşturacaktır. Nesne dosya adını belirtmek için komutu aşağıdaki şekilde yürütün:
gcc hello.c -o hello
'Merhaba' çıktı dosyasını oluşturacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:
Çıkıştaki tüm uyarıları etkinleştirmek için '-Duvar' gcc komutuyla seçenek. Hello.c'nin ana fonksiyonunda bir değişken oluşturalım. Aşağıdaki kodu göz önünde bulundurun:
Merhaba C:
#include int main() { int a; printf('Hello, world! '); return 0; }
Yukarıdaki kodu -Wall seçeneğini kullanarak derlersek. Uyarıları atacak. Dosyayı derlemek için aşağıdaki komutu yürütün:
gcc -wall hello.c
Yukarıdaki komut uyarıları gösterecektir. Aşağıdaki çıktıyı göz önünde bulundurun:
Derleme işleminin yalnızca adım adım çıktısını üretebiliriz.
Önişlemci çıktısını üretin
'-E' seçeneğini kullanarak sadece önişlem çıktısını üretebiliriz. Aşağıdaki komutu göz önünde bulundurun:
gcc -E hello.c > hello.i
Yukarıdaki komuttan bir dosya 'Merhaba ben' önceden işlenmiş çıktıyı içeren çıktı oluşturulur. Aşağıdaki çıktıyı göz önünde bulundurun:
Montaj kodunu üretin
Montaj kodunu üretmek için komutu '-S' seçeneğiyle yürütün. Aşağıdaki komutu göz önünde bulundurun:
gcc -S hello.c > hello.s
Yukarıdaki komut 'merhaba.s' dosyasını oluşturacaktır. derleme kodunu içeren dosya. Aşağıdaki çıktıyı göz önünde bulundurun:
Derlenmiş kodu üretin
python sıralama sözlüğü
'-C' seçeneğini kullanarak sadece derlenmiş kodu üretebiliriz. Aşağıdaki komutu göz önünde bulundurun:
gcc -C hello.c
Yukarıdaki komut, yalnızca makine kodunu veya derlenmiş kodu içeren bir 'a.out' dosyası oluşturacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:
Derleme sürecinin tüm ara dosyalarını üretin
'-save-temp' seçeneğini kullanarak derleme işleminin tüm ara dosyalarını üretebiliriz. Aşağıdaki çıktıyı göz önünde bulundurun:
gcc -save-temps hello.c
Yukarıdaki komut, tüm ara dosyaları ve çalıştırılabilir dosyaları aynı anda oluşturacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:
Gcc komutunun attığı her adımın ayrıntılı bilgisini görüntüleyebiliriz. Bunu yapmak için komutu '-v' seçeneğiyle yürütün.
gcc -W -v hello.c
Aşağıdaki çıktı ekini göz önünde bulundurun:
Gcc komutunun en kullanışlı örneklerinden bazılarını tartıştık. Gcc komutu çok sayıda seçenekle kolaylık sağladığı için kullanırken herhangi bir yerde takılıp kalabilirsiniz. Terminalden kendi başınıza nasıl yardım alabileceğinizi görelim.
GCC kılavuzu
Gcc komutunu kullanırken herhangi bir yerde takılıp kalırsanız terminalinizden yardım alabilirsiniz. Kılavuza komut satırından erişmek için man komutunu aşağıdaki şekilde yürütün:
man gcc
Yukarıdaki komut, desteklenen seçeneklerin açıklamasını ve listesini kısa bir açıklamayla birlikte içeren kılavuzu görüntüleyecektir. Aşağıdaki çıktı ekini göz önünde bulundurun:
Daha fazlasını okumak için çıktıyı kaydırabilirsiniz. Yardım için 'h' tuşuna ve kılavuzdan çıkıp terminale geri dönmek için q tuşuna basın.