Menginstal sesuatu di windows membutuhkan klik tombol. Tetapi setiap kali saya mencoba menginstal sesuatu di linux, yang tidak ditemukan di APT, saya jadi bingung.
Anda mengunduh folder zip, lalu apa? Jika Anda beruntung ada README, merujuk pada beberapa dokumentasi, yang mungkin membantu Anda, jika Anda beruntung.
Apa trik sulap ketika "menginstal" ekstensi dan aplikasi yang tidak ditemukan di APT?
Saya suka linux, tetapi masalah ini menghantui saya setiap hari.
software-installation
directory-structure
Marcus Johansson
sumber
sumber
Jawaban:
Jika itu adalah perangkat lunak yang menaati Filesystem Hierarchy Standard daripada Anda harus menempatkannya di
/usr/local
dan subdirektori yang tepat (sepertibin
,lib
,share
, ...).Perangkat lunak lain harus ditempatkan di direktori mereka sendiri di bawah
/opt
. Kemudian aturPATH
variabel Anda untuk memasukkanbin
direktori atau direktori apa pun yang menyimpan file executable, atau buat tautan simbolis/usr/local/bin
.sumber
Tidak ada jawaban sederhana untuk pertanyaan ini, tetapi saya dapat memberi Anda gambaran umum tentang cara kerjanya:
Sebagian besar perangkat lunak Linux disediakan oleh penulis ("upstream") dalam bentuk kode sumber. Ini memungkinkan setiap orang yang memiliki kompiler untuk platform dan konfigurasi sistem khusus mereka untuk mengunduh kode sumber dan mengkompilasinya sendiri. Sayangnya untuk Anda, banyak program bergantung pada fungsi yang disediakan oleh program lain dan pustaka perangkat lunak (dependensi).
Perangkat lunak Windows biasanya datang dalam bentuk yang dikompilasi. Itu berarti ada satu file yang dapat dieksekusi generik untuk semua komputer Windows, dan dependensi sering menyertainya dalam paket instal.
Distribusi Linux mengambil kode sumber, precompile untuk Anda dan menawarkannya kepada Anda sebagai paket juga. Paket tidak termasuk dependensi, tetapi merujuk pada mereka dan memaksa sistem paket untuk menginstalnya juga (yang kadang-kadang dapat menyebabkan kekacauan yang mungkin sudah Anda alami sendiri).
Jika tidak ada paket yang dikompilasi, Anda selalu dapat mengunduh kode sumber dan mengompilasinya sendiri. Sebagian besar waktu, yang berikut ini akan berfungsi:
Baris ./configure menetapkan tahapan untuk proses kompilasi (dan meludahkan kesalahan jika dependensi tidak terpenuhi). Baris make akan menjalankan Makefile, sebuah skrip yang mengkompilasi semua bagian dari program.
Secara tradisional, Anda akan menggunakan make install untuk kemudian menginstal perangkat lunak. Ini biasanya menempatkan executable di / usr / local / bin.
Karena Anda menggunakan apt, saya sangat merekomendasikan untuk mendapatkan checkinstall. Anda dapat menggunakannya sebagai ganti make install, dan itu akan menghasilkan paket deb. Untuk Anda. Ini membuatnya lebih mudah untuk menghapus perangkat lunak dengan bersih di kemudian hari.
Perhatikan bahwa ada beberapa sistem kompilasi lainnya, misalnya cmake; dan beberapa perangkat lunak telah dikompilasi tetapi tidak dikemas (dalam hal ini Anda dapat memulainya langsung dari folder yang tidak di-zip); dan beberapa perangkat lunak hadir sebagai kumpulan skrip yang harus Anda jalankan sendiri. Kode baru dari SVN kadang-kadang datang tanpa mengkonfigurasi skrip, jadi Anda harus terlebih dahulu menjalankan autoconf toolchain ... dll, dll ... Anda melihat ada banyak pengecualian pada aturan, tetapi dengan sedikit pengalaman Anda akan dapat katakan apa yang harus dilakukan dengan sebagian besar unduhan misterius itu. Configure-Make-Checkinstall adalah awal pertama yang baik.
PS. Habiskan satu atau dua akhir pekan untuk belajar bagaimana memprogram diri sendiri, dan segalanya akan menjadi sangat jelas :-)
PPS. Anda mungkin bertanya-tanya mengapa pembuat perangkat lunak Linux tidak hanya menyediakan paket yang sudah dikompilasi alih-alih kode sumber. Yah, kadang-kadang mereka melakukannya. Tetapi platform dan distribusi Linux yang berbeda semuanya memiliki format paket dan aturan sistem file sendiri, sehingga sebagai pengembang Anda harus menyediakan paket untuk setiap konfigurasi yang mungkin - yang merepotkan. Paket Ubuntu seringkali merupakan yang paling mudah ditemukan - Anda harus mencari tahu apa itu PPA dan bagaimana cara kerjanya!
sumber
Anda harus memeriksa checkinstall . Dari pada
kamu lakukan
dan Anda akan dapat mengelola paket itu seolah-olah Anda telah menginstalnya melalui apt.
sumber
Ada alasan yang valid dan masuk akal ini sangat membingungkan (ada juga alasan artifak yang mengganggu) ...
Unix memiliki riwayat multi-pengguna dan sebagian besar pengguna tidak memiliki akses untuk menginstal aplikasi di luar area yang telah mereka akses.
Jadi teorinya adalah bahwa Anda akan membangun sesuatu di direktori home Anda, lalu menyalinnya ke area yang Anda kontrol (area proyek Anda sendiri, atau area bersama).
PC Windows umumnya adalah sistem pengguna tunggal dan tidak memiliki kendala ini, semuanya berjalan dalam Program Files tidak peduli apa.
Lalu ada fakta bodoh dan menjengkelkan bahwa setiap kali Unix versi baru keluar, para pencipta merasa perlu untuk mengubah lokasi, tetapi yang lama harus tetap ada untuk skrip otomatis. Ini memberi Anda banyak direktori terkait yang melayani tujuan yang sama.
Sistem init bahkan lebih buruk.
sumber