Download - Source File Compilation & Make Program
![Page 1: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/1.jpg)
I Putu Arya Dharmaadi, S.T., M.T.
Dosen Jurusan Teknologi Informasi
Universitas Udayana
http://aryadharmaadi.com
![Page 2: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/2.jpg)
Pendahuluan Bahasa C merupakan bahasa pemrograman prosedural
yang dimana program dieksekusi per baris, dari atas ke bawah secara berurutan.
Program yang ditulis dengan bahasa C wajib memiliki fungsi utama, yaitu main()
Artinya, compiler akan memulai mengeksekusi baris-baris code yang dimulai dari isi fungsi main()
7 December 2015 http://aryadharmaadi.com 2
![Page 3: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/3.jpg)
Deklarasi Fungsi Jika anda membuat sebuah fungsi baru yang akan
digunakan di fungsi utama, maka anda wajib mendeklarasikan prototipe fungsi tersebut di sebelah atas (sebelum) fungsi main()
Tujuannya adalah untuk mengenalkan terlebih dahulu daftar fungsi yang akan digunakan kepada compiler
Kemudian, isi dari fungsi (body) tersebut dituliskan di bagian bawah (setelah) fungsi main()
7 December 2015 http://aryadharmaadi.com 3
![Page 4: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/4.jpg)
Contoh file: uts.c
7 December 2015 http://aryadharmaadi.com 4
![Page 5: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/5.jpg)
Kompilasi Program Program yang ditulis dalam bahasa C akan disimpan
dalam file dengan ekstensi *.c, contoh : uts.c
File tersebut selanjutnya akan di-compile dengan menggunakan compiler C, seperti gcc.
Hasil dari proses compile adalah file *.exe yang sudah bisa dijalankan pada OS Windows
7 December 2015 http://aryadharmaadi.com 5
![Page 6: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/6.jpg)
ADT (Abstract Data Type) ADT merupakan struktur data dan
operasinya yang dibungkus bersama-sama menjadi sebuah entitas.
Contoh sederhana, sebuah alat Counter.
Alat tersebut menampilkan angka saat ini dan berisi tombol ‘next’ dan ‘reset’.
7 December 2015 http://aryadharmaadi.com 6
![Page 7: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/7.jpg)
Contoh ADT Artinya, dalam konsep ADT, alat tersebut ditulis
sebagai berikut :
7 December 2015 http://aryadharmaadi.com 7
![Page 8: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/8.jpg)
Penulisan Code Program ADT Tidak seperti program sederhana yang hanya terdiri
dari 1 file *.c, penulisan program dengan konsep ADT akan menghasilkan beberapa file source code yang terpisah
File-file tersebut terdiri dari:
1 file *.c sebagai program utama,
1 file *.c sebagai body (isi implementasi) dari ADT (tergantung berapa jumlah ADT yang digunakan)
1 file *.h sebagai header (kerangka dan deklarasi fungsi) dari ADT (tergantung berapa ADT yang digunakan)
7 December 2015 http://aryadharmaadi.com 8
![Page 9: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/9.jpg)
Ilustrasi ADT dengan File Program Utama
7 December 2015 http://aryadharmaadi.com 9
typedef struct mahasiswa{
mahasiswa.h
#include “mahasiswa.h” #include “kuliah.h” int main(){ }
main.c
typedef struct kuliah{
kuliah.h
![Page 10: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/10.jpg)
Kompilasi ADT Oleh karena program terdiri dari beberapa file, anda
memerlukan perintah khusus pada gcc compiler untuk meng-compile setiap file dan menggabungkan (linking) file-file tersebut menjadi sebuah program yang utuh
Cara yang paling mudah adalah membuat ‘Makefile’
‘Makefile’ merupakan sebuah file yang berisi perintah-perintah yang akan dijalankan oleh compiler
‘Makefile’ memanfaatkan utilitas ‘make’ yang ada pada gcc
7 December 2015 http://aryadharmaadi.com 10
![Page 11: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/11.jpg)
Makefile Makefile mengandung informasi mengenai perintah
apa yang dikerjakan oleh utilitas ‘make’
Makefile umumnya tersusun atas:
Komentar : dituliskan diantara karakter # dan newline
Definisi variabel : ditulis dalam bentuk:
nama-variabel = nilai pengisi variabel
Make_rules : aturan makefile
7 December 2015 http://aryadharmaadi.com 11
![Page 12: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/12.jpg)
Make Rules Make Rules terdiri dari:
Target : file yang harus diciptakan
Dependencies : nama-nama file yang menjadi input
Command : aksi yang harus dilakukan oleh utilitas ‘make’ untuk menciptakan target jika ada dependencies terpenuhi
Cara penulisan make rules:
TARGET : DEPENDENCIES
<tab>COMMAND
7 December 2015 http://aryadharmaadi.com 12
![Page 13: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/13.jpg)
Contoh Make Rules
7 December 2015 http://aryadharmaadi.com 13
![Page 14: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/14.jpg)
Menjalankan Makefile Buka command prompt, kemudian pindah direktori ke
direktori project, dan ketik make
Perintah tersebut akan mencari sebuah file bernama makefile pada direktori dan mengeksekusinya
Perintah make akan mulai dengan target pertama, yaitu program_kampus
Selanjutnya, karena target program_kampus memiliki dependencies ke file main.o mahasiswa.o kuliah.o, maka perintah make akan dilanjutkan ke target main.o. Dan seterusnya.
7 December 2015 http://aryadharmaadi.com 14
![Page 15: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/15.jpg)
Menjalankan Makefile (2) Jadi, dengan mengetikkan perintah make pada
command prompt, akan dihasilkan file program_kampus.exe yang merupakan file executable dari project yang anda kerjakan
7 December 2015 http://aryadharmaadi.com 15
![Page 16: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/16.jpg)
Penutup Makefile bermanfaat bagi anda yang ingin
mempersingkat waktu compile sebuah project yang terdiri dari banyak file karena tanpa makefile, anda harus meng-compile source code satu persatu menggunakan command line
7 December 2015 http://aryadharmaadi.com 16
![Page 17: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/17.jpg)
Next . . . String
7 December 2015 http://aryadharmaadi.com 17
![Page 18: Source File Compilation & Make Program](https://reader033.vdokumen.com/reader033/viewer/2022052514/58f0a3a91a28ab1b4b8b4675/html5/thumbnails/18.jpg)
Referensi http://mrbook.org/blog/tutorials/make/
http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/
7 December 2015 http://aryadharmaadi.com 18