Cara yang tepat untuk membangun dari sumber


12

Saya masuk sebagai pengguna biasa. Haruskah saya menggunakan:

./configure && make && make install

atau

sudo ./configure && sudo make && sudo make install

atau

./configure && make && sudo make install

saat menginstal paket.

Dan bisakah seseorang menjelaskan perbedaannya.

Saya ingin semua pengguna dapat menggunakannya.


Bahkan lebih baik ... unix.stackexchange.com
mxmissile

1
Anda harus menginstal perangkat lunak dari repositori atau PPA ubuntu. Jika Anda mengalami sesuatu yang belum dikemas, silakan mempertimbangkan untuk memulai PPA Anda sendiri. Dengan cara ini Anda akan menjaga sistem Anda tetap bersih, akan menyediakan paket untuk orang lain juga dan bonus gratis pada akhirnya akan mendapatkan lebih banyak penguji.
vtest

Jawaban:


15

Versi 3 Anda benar ./configure && make && sudo make install,. Membuat dan mengonfigurasi dapat dilakukan sebagai pengguna biasa karena Anda tidak mencoba menulis file di direktori sistem, make installakan sering mencoba menyalin binari ke / usr / bin atau / bin yang memerlukan akses root untuk menulis.


... dan yang tidak boleh dituliskan karena kontennya dikelola oleh manajemen paket.
reinierpost

2
Anda bahkan mungkin melangkah lebih jauh untuk membuat pengguna local, kemudian mengeluarkan chown -R local /usr/localdan menginstal perangkat lunak menggunakan sudo local make installsehingga Anda akan diperingatkan ketika sebuah paket menulis di tempat lain daripada di bawahnya /usr/local(yang dapat mengacaukan manajemen paket Anda).
reinierpost

Jika paket dibangun sesuai dengan standar pengkodean gnu, mentah 'configure && make && sudo make install' hanya akan menginstal di / usr / local, dan bukan di / usr / bin atau / bin.
William Pursell

4

Anda memerlukan versi terakhir:

./configure && make && sudo make install

Konfigurasikan dan buat dapat terjadi di folder lokal Anda, tetapi Anda akan memerlukan izin root untuk menginstal. Perintah itu mencapainya.

Pastikan aplikasi yang Anda instal belum ada dalam manajer paket. Biasanya lebih mudah menggunakan perangkat lunak yang sudah dikompilasi untuk sistem Anda daripada mencoba menemukan semua dependensi untuk mengkompilasi sesuatu.


2

Anda harus menggunakan hak istimewa paling tidak yang berfungsi. Itu biasanya:

./configure && make && sudo make install


2

&& diuraikan oleh shell asli Anda. Meletakkan satu sudo di depan hanya memengaruhi konfigurasi. Opsi terakhir paling masuk akal, karena itu akan mengkonfigurasi dan mengkompilasi sebagai pengguna biasa dan kemudian menginstal hasilnya untuk semua orang untuk digunakan.

Satu peringatan adalah bahwa beberapa skrip konfigurasi akan mendeteksi bahwa mereka berjalan sebagai pengguna non-root dan membuat makefile yang menginstal ke $ HOME atau serupa. Dalam hal ini, Anda juga ingin 'sudo ./configure'. Jika Anda menjalankan konfigurasi atau menjadikannya root, Anda akan memiliki gangguan pada beberapa file yang dimiliki root di direktori pengguna biasa Anda.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.