Bahasa: 日本語 | Español | Français | Português | 中文 | Bahasa Indonesia | English
Sebelumnya | Berikutnya | Daftar Isi | Versi asli bahasa Inggris (gnu.org)

1 Gambaran umum make

Utilitas make secara otomatis menentukan bagian mana dari program besar yang perlu dikompilasi ulang, kemudian mengeluarkan perintah untuk mengompilasi ulang bagian-bagian tersebut. Manual ini menjelaskan versi GNU-nya, yaitu GNU make. GNU make diimplementasikan oleh Richard M. Stallman dan Roland McGrath, dan sejak versi 3.76 pengembangannya dilanjutkan oleh Paul D. Smith.

GNU make sesuai dengan bagian 6.2 IEEE Standard 1003.2-1992 (POSIX.2).

Contoh-contoh dalam manual ini menampilkan program bahasa C karena bahasa itulah yang paling umum digunakan. Akan tetapi, make dapat digunakan dengan bahasa pemrograman apa pun yang kompilernya dapat dijalankan melalui perintah shell. Bahkan, make sama sekali tidak terbatas pada program saja. Anda dapat menggunakannya untuk tugas apa pun yang mengharuskan sejumlah file diperbarui secara otomatis dari file lain, setiap kali file lain tersebut berubah.

Persiapan dan menjalankan make

Untuk mempersiapkan penggunaan make, Anda harus menulis file yang disebut makefile. File ini menjelaskan hubungan antar-file dalam program Anda serta menyediakan perintah untuk memperbarui setiap file. Dalam program, biasanya file yang dapat dieksekusi diperbarui dari file objek, yang pada gilirannya dibuat dengan mengompilasi file sumber.

Begitu makefile yang sesuai sudah tersedia, setiap kali Anda mengubah beberapa file sumber, cukup jalankan perintah shell sederhana berikut ini:

make

Ini saja sudah cukup untuk melakukan semua kompilasi ulang yang diperlukan. make menggunakan basis data makefile beserta waktu modifikasi terakhir setiap file untuk menentukan file mana yang perlu diperbarui. Untuk setiap file yang perlu diperbarui tersebut, make mengeluarkan resep (recipe, isi yang dijalankan aturan) yang tercatat dalam basis data.

Anda dapat mengontrol file mana yang akan dikompilasi ulang dan bagaimana caranya dengan memberikan argumen baris perintah kepada make. Lihat bab Cara menjalankan make.

1.1 Cara membaca manual ini

Jika Anda baru mengenal make atau ingin mendapatkan gambaran umum terlebih dahulu, bacalah beberapa bagian pertama di setiap bab, dan lewati bagian-bagian selanjutnya. Di setiap bab, bagian-bagian awal berisi informasi pengantar atau umum, sedangkan bagian-bagian selanjutnya berisi informasi yang lebih khusus dan teknis. Pengecualiannya adalah Bab 2, “Pengantar makefile”, yang seluruhnya bersifat pengantar.

Jika Anda sudah terbiasa dengan program make lain, silakan lihat terlebih dahulu bab Fitur GNU make, yang mencantumkan daftar peningkatan yang dimiliki GNU make. Selain itu, bab Inkompatibilitas dan fitur yang tidak tersedia menjelaskan beberapa hal kecil yang dimiliki make lain tetapi tidak dimiliki GNU make.

Jika Anda ingin ringkasan cepat, lihat ringkasan opsi, Referensi cepat, dan bagian Nama target bawaan khusus.

1.2 Masalah dan bug

Jika Anda mengalami masalah dengan GNU make atau merasa telah menemukan bug, silakan laporkan kepada para pengembang; kami tidak dapat menjanjikan apa-apa, tetapi bisa jadi kami memang ingin memperbaikinya.

Sebelum melaporkan bug, pastikan Anda benar-benar telah menemukan bug yang sesungguhnya. Bacalah kembali dokumentasi dengan saksama dan periksa apakah dokumentasi tersebut benar-benar menyatakan bahwa Anda bisa melakukan apa yang sedang Anda coba lakukan. Jika tidak jelas apakah sesuatu seharusnya bisa dilakukan atau tidak, laporkan juga hal itu; itu berarti ada bug dalam dokumentasinya!

Sebelum melaporkan bug atau mencoba memperbaikinya sendiri, cobalah persempit masalahnya menjadi makefile sekecil mungkin yang masih dapat mereproduksi masalah tersebut. Setelah itu, kirimkan makefile tersebut beserta hasil persis yang diberikan make (termasuk pesan error atau peringatan apa pun). Jangan memparafrasakan pesan-pesan tersebut — cara terbaik adalah menyalin dan menempelkannya langsung ke dalam laporan Anda. Saat membuat makefile kecil ini, pastikan Anda tidak menggunakan alat non-free atau alat yang tidak umum di dalam resep. Pada umumnya, perilaku alat semacam itu dapat ditiru dengan perintah shell sederhana. Terakhir, pastikan Anda menjelaskan apa yang Anda harapkan terjadi; ini akan membantu menentukan apakah masalahnya benar-benar ada di dokumentasi.

Setelah Anda memahami masalahnya secara tepat, Anda dapat melaporkannya dengan salah satu dari dua cara berikut. Kirim email ke alamat berikut:

bug-make@gnu.org

Atau, gunakan alat manajemen proyek berbasis web berikut:

https://savannah.gnu.org/projects/make/

Selain informasi di atas, pastikan Anda menyertakan nomor versi make yang Anda gunakan. Anda dapat memeriksa versinya dengan perintah make --version. Jangan lupa juga mencantumkan jenis mesin dan sistem operasi yang Anda gunakan. Informasi ini juga dapat dilihat pada baris-baris terakhir keluaran make --help.

Jika Anda ingin mengusulkan perubahan kode, lihat bagian “Submitting Patches” pada file README.

(Catatan penerjemah: Kontak di atas adalah kontak proyek asal (GNU) sesuai teks aslinya. Laporan bug sebaiknya ditulis dalam bahasa Inggris, dan mohon jangan melaporkan kesalahan terjemahan ini kepada GNU. Untuk masukan terkait terjemahan, silakan hubungi ecoop.net.)


Sebelumnya | Berikutnya | Daftar Isi | Versi asli bahasa Inggris (gnu.org)