Sayfalar

19 Kasım 2016 Cumartesi

CLANG C Derleyici İncelemeleri

Ubuntu 14.04 LTS işletim sisteminde Uçbirimi açalım. Uçbirime aşağıdaki komutu yazalım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ gedit

ile gedit editörünü açın. Burada aşağıdaki kodu yazın.

#include <stdio.h>
#include <stdlib.h>

// this program count from 1 to 10 in a for loop.

int main()
{
         int z=10;

         char text[]="value of i = ";
         int i;

         printf("\nStart of the program!\n\n");
         for(i=0; i<10;i++)
         {
                  /* code */
                  printf("%s = %d\n", text, i+1);
         }

         printf("\nEnd os the program!\n");
         
         return 0;
}
Yazdığımız c kodunu sample.c olarak bulunduğunuz dizin içerisine kayıt edin. gedit editörünü kapatın. Komut satırına tekrar gelin.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ls

komutunu işletin ve dizin içerisindeki dosyalara bakın.

sample.c

görüldüğü gibi oluşturmuş olduğumuz c dosya burada. Şimdi bu dosyayı clang compiler ile derleyelim.

komut satırına bunu yazın.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ clang sample.c

derleme sonrasında dizin içerisine tekrar bakalım;

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ls
a.out sample.c

Derleme sonrasında dizin içerisinde a.out isimli bir doysa oluştu. Şimdi bu dosyayı çalıştıralım.
Komut satırına ./ ile beraber oluşan a.out dosyasının ismini uzantısı ile beraber yazalım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ./a.out

Program çalıştığında aşağıdaki çıktıyı verir.

Start of the program!

value of i = = 1
value of i = = 2
value of i = = 3
value of i = = 4
value of i = = 5
value of i = = 6
value of i = = 7
value of i = = 8
value of i = = 9
value of i = = 10

End os the program!

Şimdi de çalıştırılabilir dosya derleyelim;
Komut satırına aşağıdaki komutları yazalım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ clang sample.c -o result

Derleme sonrasında tekrar dizin içerisine bakalım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ls

a.out result sample.c

Görüldüğü gibi result isminde bir çalıştırılabilir dosya oluştu. Şimdi tekrar bu dosyayı çalıştıralım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ./result

Program aşağıdaki gibi çıktı verecektir.

Start of the program!

value of i = = 1
value of i = = 2
value of i = = 3
value of i = = 4
value of i = = 5
value of i = = 6
value of i = = 7
value of i = = 8
value of i = = 9
value of i = = 10

End os the program!

Şimdi yazdığımız kodu derledik ve çalıştırdık. Lakin kodumuz ile ilgili uyarıları hiç görmedik. Uyarıları görebilmek için aşağıdaki komutları kullanarak kodumuzu derleyelim.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ clang -Wall sample.c -o

resultsample.c:8:6: warning: unused variable 'z' [-Wunused-variable]
int z=10;
^
1 warning generated.

Çıktıdan görüldüğü üzere 1 adet uyarımız var. Kod içinde "int" tipte "z" değişkeni oluşturmuşuz lakin bu değişkeni hiç kullanmamışız. Derleyici bizi uyarıyor. Kodumuzu gedit ile tekrar açalım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ gedit sample.c

#include <stdio.h>
#include <stdlib.h>

// this program count from 1 to 10 in a for loop.

int main()
{
         //int z=10;

         char text[]="value of i = ";
         int i;

         printf("\nStart of the program!\n\n");
         for(i=0; i<10;i++)
         {
                  /* code */
                  printf("%s = %d\n", text, i+1);
         }

         printf("\nEnd os the program!\n");
         
         return 0;
}

Burada ilgili tanımlamayı comment içine alalım ve kodumuzu tekrar derleyelim.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ clang -Wall sample.c -o result

Derleme sonrası uyarı mesajı almadık. Şimdi kodumuzu çalıştıralım.

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ ./result

Start of the program!

value of i = = 1
value of i = = 2
value of i = = 3
value of i = = 4
value of i = = 5
value of i = = 6
value of i = = 7
value of i = = 8
value of i = = 9
value of i = = 10

End os the program!

hakki@hakki-Lenovo-ideapad-300-17ISK:~/Clang_prg$ 

Böylece ilk "c" kodumuzu yazdık , derledik ve çalıştırdık.

Saygılarımla...