Yeditepe Üniversitesi Bilgisayar Topluluğu

Kasım 1, 2008

Linux üzerinde gcc kullanımı, C kodlarını derlemek ve çalıştırmak

Kategori: C/C++, Linux — xaph @ 7:56 pm
Tags: , ,

Linux üzerinde çalışıyorsanız ve C programlaya yeni başladıysanız, başlangıçta C kodlarını yazarken ve derlerken zorluk çekebilirsiniz.
Bunu halletmek için her şeyden önce elinizde C kodlarınızı yazacağınız bir text editorunuz bulunmalıdır. Seçeceğiniz text editörü konsol üzerinde çalışan vi, nano gibi editörler ya da görsel olarak çalışabileceğiniz gedit, kate, emacs gibi editörler olabilir. Hangisini kullanacağınıza karar vermek tamamen size kalmış. Herhangi bir text editöründe kodlarınızı yazdıktan sonra istediğiniz herhangi bir yere kaydedebilirsiniz. Kayıt işleminde dikkat etmeniz gereken nokta C kodlarınızı .c uzantılı olarak kaydetmenizdir.
Kodumuzu ornek.c adıyla /home/kullanıcı_adı klasörünüze kaydettiğimizi düşünelim ve örnek olarak bir C programını çalıştıralım. İlk yapmamız gereken bir konsol açıp kodumuzun bulunduğu dizine geçmek olmalı. Bunu yapmak için

$ cd /home/kullanıcı_adı

yazmamız yeterli olacaktır.
Eğer ki C kodumuzun olduğu klasörde olup olmadığımız hakkında bir şüphemiz varsa bunu

$ ls

komutunu kullanarak kontrol edebiliriz. “ls” komutu bulunduğumuz klasördeki dosyaların isimlerini konsola yazar.
Kodumuzun bulunduğu klasöre geçtikten sonra gcc ile kodumuzu derleyebiliriz. gcc’nin açılımı “gnu c compiler” olmakla linux dağıtımlarında kullanılan standart C derleyicisidir. gcc kullanarak kodumuzu derlemek için yine konsol üzerinde

$ gcc ornek.c

yazmamız yeterli olacaktır. Bu işlem sonunda kodumuz derlenir ve eğer varsa kod üzerindeki hatalar konsola yazılır. Eğer ki sorunsuz bir derleme yaptıysanız kodunuzun bulunduğu dizinde “a.out” adında bir dosya oluştuğunu görmelisiniz. Bu c kodunuzun derlenmiş, çalıştırılabilir(binary) halidir.
Derlenmiş C kodumuzu çalıştırmak için ise konsola

$ ./a.out

yazmamız yeterli olacaktır. Böylece C kodumuzun çıktısını konsol üzerinde görebiliriz.

a.out çıktısından farklı bir çıktı adıyla kod derlemek
Derleme işlemi yaparken birbirinden ayrı birkaç tane kod derlememiz ve hepsini ayrı ayrı kullanmamız gerekebilir. Eğer ki bütün kodlarımız a.out olarak derlenirse her çalıştırma işlemi için kodlarımızı yeniden derlememiz gerekir. Bunu engellemek için gcc’ye -o parametresini girmemiz ve kodumuzun derlenmiş halini başka bir isimde kaydetmemiz gerekmektedir. Örnek olarak ornek.c kodumuzu derleyip ornek adında kaydetmek için

$ gcc ornek.c - ornek

yazmamız yeterli olacaktır. Burada kullanacağımız -o parametresi gcc’ye kodumuzun çıktısı için farklı bir isim seçmek istediğimizi, ornek ise çıktımızın hangi adı alacağını anlatır. Kodumuzu farklı bir isimle derledikten sonra ise dikkat etmemiz gereken şey artık a.out değil de yani dosya adımızı çalıştırmamızdır. Yani son derlememiz için konsola

$ ./ornek

kodunu girmeliyiz. Böylece ornek.c dosyamızın derlenmiş hali olan ornek dosyasını çalıştırmış oluruz.

Derleyici Kavramı ve C’ye Başlangıç

Kategori: C/C++ — xaph @ 7:55 pm
Tags:

Derleyici Nedir?

Herhangi bir dilde programlamaya başlamaya karar veren birisinin ilk karşılaştığı problemlerden birisi oluşturacağı program kodlarını nereye yazması gerektiğidir. C de başlangıç dillerinden birisi olarak gösterildiğine göre C programlama dilinde program yazmak isteyenlerin bir kısmını yeni başlayanlar kategorisine alabiliriz. Bu yüzden sizlere oncelikle derleyici(compiler) nedir ve kullanımı nasıldır bunu anlatmak istedim.

Bir çogunuzun bildiği/duydugu üzere bilgisayarlar sadece 0 ve 1′leri kullanmaktadırlar. Bilgisayarın kullandığı bu 0 ve 1′lerden oluşan dile makine dili adı verilir. Makine diline bilgisayarın anadili diyebiliriz. Ancak makine dili bizim için öğrenmesi ve kullanaması oldukça zor bir dildir. Ayrıca kullanımı da oldukça uzundur Mesela makine dilinde bir A harfi tanımlamak istediğimizde 01000001 yazmak zorundayız. Programlama dillerive derleyiciler işte tam bu noktada devreye girer. Biz kullandığımız dilin kurallarına göre bir A harfi yazdığımızda kullandığımız derleyici onu makine diline yani 01000001 haline çevirir. Yani derleyicilir bizim bilgisayar ile aramızdaki tercümanlardır diyebiliriz. C için kullanabileceğiniz bir derleyiciyi verdiğim linkten ulaşabilirsiniz.

Dev C/C++ İndir

Dev C/C++’ın kurulum aşamasının herhangi bir Windows programından farkı yok ancak ilk çalıştırmada sizden bir özelliğinin kurulumu hakkında onay ister. Kurup kurmamak tamamen size kalmış bir şey. Ancak kurarsanız bilgisayarınızdan normalden daha fazla bir şekilde ram kullanacaktır.

İlk C programımızı Yazalım ve Çalıştıralım:

Derleyicimizi kurduktan sonra C’ye başlangıç için bir program yazabiliriz. Öncelikle birçok programlama kitabında da ilk olarak yapıldığı gibi “Hello World” programı yazalım. Hello World programı çalıştırıldığı zaman ekrana “Hello World yazdıran ve ardından sona eren bir programdır. Henğz derleyicinin nasıl çalıştığını bilmediğiniz için bu örnekte derleme işlemini adım adım yapacağız.

1- Öncelikle kod yazacağımız belgeyi oluşturmakla işe başlayalım. Dev-C’de File menüsünden New->Source File adımlarını izlerseniz boş bir C belgesi oluşturmuş olursunuz.

2- Dilerseniz kodumuzu yazmadan önce belgemizi adlandıralım. Bunun için yine File menüsünden Save as seçeneğine tıklamalısınız. Ya da klavyeden Ctrl+F12 kısayolunu da kullanabilirsiniz. Açılan pencerede Dosya adı olarak “Untitled Document” yazan yere ilk programımızı adlandırmak için HelloWorld.c (C kodları .c uzantısını kullanırlar) yazabilirsiniz. Boylece oluşturduğumuz belgeyi adlandırmış olduk.

3- Şimdi elimizde HelloWorld.c olarak adlandırdığımız boş bir C belgesi var. Artık programımızı yazabiliriz:


//Hello World programı
#include

int main()
{

printf(“Hello World!!\n”);
return 0;

}

4- Kodumuzu yazdıktan sonra execute menüsünden compile seçeneğini seçersek ve kodumuzda hata yoksa derleyicimiz kodumuzu çalıştırılabilir bir hale getirir. Eğer kodda hata çıkarsa derleyicimiz size “1 Warning 3 Error” gibi bir şekilde hata verecek ve hataların hangi satırda meydana geldiğini gösterecektir.

5- Kodumuzu duzgun bir şekilde derlediğimizi varsayarsak yine execute menüsünden run diyerek programımızı çalıştırabiliriz. Ancak programımız sadece ekrana yazı yazıp kapanacağı için siz ekranda bir şey göremeyeceksiniz. kodumuzu kaydettigimiz yerde .exe uzantılı yeni bir dosya olduğunu göreceksiniz. HelloWorld.exe adında olan bu uygulama kodumuzun derlenmiş ve çalıştırılabilir halidir. Programımızın çıktısını görmek için programımızı “komut istemi”nden çalıştırmamız gerekmektedir. Bunun için Başlat menüsünden Çalıştır seçildikten sonra cmd yazıp çalıştırmalı, ardından programımızı(.exe uzantılı halini) sürükleyip komut istemi içine bırakarak ya da adresini yazarak(C:Documents and Settings/kullanıcıAdı/Belgelerim/HelloWorld.exe gibi) enter tuşuna basmalıyız. Böylece kodumuzun verdiği çıktıyı tam olarak görebiliriz.

Bu belgemizde ekrana çıktı veren basit bir program yazdık. Alıştırma olarak printf içerisindeki yazıyı(tırnak işaretlerine dokunmadan) değiştirerek birkaç derleme daha yapabilirsiniz.(printf içerisindeki \n ifadesi yeni bir satıra atlamaya yarar) Bir sonraki belgemizde ise yazdığımız programda hangi kodun ne iş yaptığını detaylı bir şekilde anlatacağım.

İyi kodlamalar:)

WordPress.com'dan blog alın.