Berfungsi untuk Memeriksa apakah File Ada Dengan GNU Make

Filefile GNU memungkinkan bisnis kecil Anda mengeluarkan kode sumber yang dapat mengadaptasi kompilasi ke mesin klien tertentu, dan terlebih dahulu mendeteksi masalah atau ketergantungan perangkat lunak yang tidak terpenuhi. Memeriksa untuk melihat apakah ada file tertentu merupakan pusat dari fungsi pembuatan GNU, dan Anda dapat memilih dari salah satu dari beberapa metode untuk melakukan hal itu.

Aturan

Salah satu cara untuk memeriksa apakah ada file di dalam makefile GNU Anda melibatkan sistem aturan bawaannya. Kode di bawah sintaks "target: prasyarat normal | prasyarat pesanan" hanya akan dijalankan jika file atau file yang ditentukan sebagai "target" tidak lebih baru daripada yang Anda tentukan di "prasyarat normal" dan jika file yang Anda tentukan dalam "hanya pesanan prasyarat" ada. Jika Anda menggunakan sintaks "target: | pesanan-satunya-prasyarat" dan jangan tentukan file apa pun di sisi kiri "|" simbol, maka kode di bawah ini akan mengeksekusi hanya jika file atau file yang Anda tentukan sebagai "hanya pesanan prasyarat" ada.

Fungsi Tes

Perintah "test -f" juga dapat memeriksa apakah ada file tertentu. Perintah ini mengambil nama file sebagai argumen, lalu mengembalikan nilai Boolean "true" jika path file yang Anda lewati ada perintah, dan "false" jika tidak ada. Anda dapat mengintegrasikan perintah ini ke dalam pernyataan "jika" dan fungsi kontrol lainnya yang Anda tempatkan di makefile untuk kontrol yang lebih baik atas penanganan kedua hasil.

Memeriksa Direktori

Metode aturan atau perintah "test -d" bekerja persis seperti perintah "test -f", hanya saja mengembalikan true jika path yang Anda berikan sebagai argumen adalah direktori yang ada, daripada memeriksa untuk melihat apakah argumen tersebut adalah file . Jika Anda memeriksa keberadaan direktori di mana makefile Anda akan mengkompilasi atau membuat file, perintah "mkdir -p directory-name" akan mencoba membuat direktori dengan nama yang Anda tentukan sebagai "nama-direktori, " kecuali sudah ada. Argumen "-p" mencegah mkdir dari melemparkan pesan kesalahan yang membuat pengguna akhir berpikir ada yang tidak beres. Anda kemudian dapat menggunakan direktori dalam kode makefile Anda mengetahui bahwa file itu ada - karena sudah ada di sana atau karena mkdir membuatnya.

Makefile yang Kuat

Sistem klien yang berbeda menyimpan paket tempat perangkat lunak Anda bergantung pada jalur direktori yang sedikit berbeda. Namun, jika Anda mengasumsikan satu lokasi, klien Anda dapat menerima makefile yang memberi tahu mereka bahwa mereka memerlukan paket perangkat lunak yang sudah mereka miliki. Anda dapat meminimalkan masalah ini dengan meneliti berbagai sistem yang digunakan oleh basis klien target Anda, dan memastikan bahwa file Anda memeriksa beberapa lokasi yang mungkin untuk paket perangkat lunak yang tergantung.

Pesan Populer