Meskipun hampir setahun sejak saya mulai menggunakan Ubuntu, saya belum mencoba menginstal perangkat lunak dari sumber. Saya sebenarnya tidak merasa perlu melakukannya. Tapi sekarang saya sedang mengerjakan sebuah perangkat lunak yang berada pada tahap kandidat rilis di repositori tetapi kode sumber versi stabil terbaru tersedia di halaman muka perangkat lunak.
Saya belajar bahwa menginstal dari kode sumber mungkin sulit jika perangkat lunak memiliki banyak dependensi. Namun jika saya mengatasinya, saya bisa senang dengan versi terbaru. Tetapi saya terus bertanya-tanya apakah perangkat lunak seperti itu dapat secara otomatis memperbarui sendiri atau apakah saya harus menjalankan beberapa skrip untuk memperbarui paket. Atau lebih buruk lagi apakah saya harus menginstal ulang setiap pembaruan dari awal?
Saya juga ingin tahu apakah ada keuntungan khusus menginstal dari sumber selain di atas.
sumber
Jawaban:
Yang terbaik adalah mencatat bahwa ketergantungan suatu perangkat lunak jarang berubah. Jika Anda telah berhasil mengompilasi perangkat lunak satu kali, setiap versi berikutnya harus mudah dikompilasi - semua dependensi harus sudah terpenuhi.
Jika Anda dikompilasi dari sumber, tidak ada
.deb
atau paket serupa yang dapat Anda gunakan untuk memperbarui, kecuali jika Anda menunggu distribusi untuk memasukkan perangkat lunak itu ke dalam repositori mereka, atau menunggu sampai PPA pengembang diperbarui.Sederhananya, seseorang harus mengkompilasinya terlebih dahulu untuk membuatnya menjadi deb. Mengompilasi versi lama tidak akan memberi Anda kemampuan untuk memperbarui secara otomatis, Anda masih harus melalui seluruh proses "unduh-konfigurasi-kompilasi-instal".
Namun , jika Anda ingin menginstal versi yang sama pada banyak komputer, masuk akal untuk mengemas versi kompilasi Anda sebagai
.deb
(atau serupa) dan mendistribusikannya ke komputer tersebut. Jika dilakukan dengan benar, dependensi akan ditarik ke otomatis.Adapun keuntungan menginstal dari sumber, hanya dua yang bisa saya pikirkan adalah:
sumber
Menurut Ini posting Anda dapat menghasilkan paket deb setelah Anda mengkompilasi sumber. Maka alih-alih "make install", Anda dapat menginstal dari paket .deb. Itu membuatnya lebih mudah untuk memperbarui (jika itu ada di beberapa repositori) karena paket tersebut akan dikelola oleh manajer paket yang melacak pembaruan.
Dalam hal untuk membangun paket "paket-beberapa" dari sumber, dan ada dependensi, Anda dapat mencoba "apt-get build-dep some-package" untuk secara otomatis menginstal semua dependensi yang diperlukan bagi Anda untuk mengkompilasi paket Anda, tanpa secara manual melacak masing-masing ketergantungan dirimu sendiri. Dengan begitu, dependensi juga dikelola oleh manajer paket dan harus diperbarui secara otomatis juga.
sumber
Alternatif lain untuk
git
pengguna patut disebutkan:Anda juga dapat menggunakan
git pull
setelah sebelumnyagit clone
untuk memperbarui kode sumber Anda dan kemudian mengkompilasi ulang program Anda jika diinginkan. (Anda juga dapat menggunakangit
untuk terus melacak file: lihat jawabannya di sini .)Jika Anda awalnya digunakan
git clone
untuk mendapatkan kode sumber, seperti pada, misalnya,dan Anda mempertahankan folder setelah mengkompilasi dan menginstal, Anda dapat melakukan cd ke folder dan menjalankan
git pull
untuk mendapatkan komit terbaru. Kemudian hapus semua direktori bangunan yang mungkin Anda buat dan / atau jalankanmake clean
(jika perlu) dan kemudian kompilasi kembali perangkat lunak dan instalcheckinstall
, yang juga membuat paket untuk Anda (meskipun tidak cocok untuk distribusi).Namun, jika Anda membantu pengembangan program dan perlu mengkompilasi ulang setelah setiap hari
git pull
maka Anda mungkin akan menginstal ke folder rumah, karena itu tidak perlu menginstal ke/usr/local/
hierarki setiap kali.Sebagai contoh, jika saya menguji dan secara teratur mengkompilasi ulang suatu program, saya akan melakukan cd ke folder build saya setelah mendapatkan komit terbaru dengan
git pull
dan menjalankan (untuk program khusus ini):dan kemudian kompilasi versi debug untuk diuji.
Namun, jika Anda hanya ingin mengkompilasi versi baru dari program kloning git Anda setiap bulan atau lebih (dan tidak menguji atau men-debugnya), Anda biasanya akan menginstal ke
/usr/local/
hierarki dengancheckinstall
.sumber
Untuk mengelola instalasi Anda dari sumber, silakan lihat jawaban saya di sini: Bagaimana cara memperbarui paket yang dikompilasi dari sumber?
sumber