Ini adalah masalah yang benar-benar membatasi kesenangan saya pada Linux. Jika aplikasi tidak pada repositori atau jika tidak memiliki skrip installer, maka saya benar-benar kesulitan di mana dan bagaimana menginstal aplikasi dari sumber.
Dibandingkan dengan Windows, itu mudah. Anda (cukup banyak) diharuskan untuk menggunakan aplikasi pemasang yang melakukan semua pekerjaan dalam Wizard. Dengan Linux ... tidak banyak.
Jadi, apakah Anda memiliki tips atau instruksi tentang ini atau apakah ada situs web yang secara eksplisit menjelaskan bagaimana, mengapa dan di mana menginstal program Linux dari sumber?
compiling
software-installation
source
Nitrodist
sumber
sumber
Jawaban:
Biasanya, proyek akan memiliki situs web dengan instruksi bagaimana membangun dan menginstalnya. Google untuk itu dulu.
Sebagian besar yang akan Anda lakukan adalah:
tar zxvf myapp.tar.gz
untuk tarball gzip atautar jxvf myapp.tar.bz2
tarball bzipped./configure && make && sudo make install
Atau:
./autogen.sh && make && sudo make install
Konfigurasi dan autogen.sh akan menerima argumen --prefix untuk menentukan di mana perangkat lunak diinstal. Saya sarankan memeriksa Di mana saya harus meletakkan perangkat lunak yang saya kompilasi sendiri? untuk saran tentang tempat terbaik untuk menginstal perangkat lunak yang dibuat khusus.
sumber
make && sudo make install
. Beberapa proyek Python hanya akan memiliki setup.py, yang akan Anda panggil untuk menginstal (karena tidak ada setup kompilasi nyata). Ada banyak sistem build / install lain di luar sana. Semoga file README atau INSTALL akan menjelaskan apa yang harus dilakukan.Saya hanya ingin menambahkan bahwa ada manajer paket yang mengkompilasi paket dari sumber, dan menangani semua dependensi paket, flag, dll.
Dalam sistem BSD itu
ports
: Menggunakan Koleksi PortsDi Debian,
apt-get
manajer paket juga dapat menginstal dari sumber: APT HOWTO: Bekerja dengan paket-paket sumber (Sama berlaku untuk Ubuntu, Linux-mint dan yang lainnya berdasarkan Debian)Distribusi Gentoo menggunakan
portage
manajer paket, yang mengkompilasi seluruh sistem hanya dari sumber: Portage Introduction .Slackware dapat mengkompilasi paket tetapi saya tidak tahu apakah ada manajer paket untuk ini di sana .. =)
Pokoknya Anda selalu dapat mengkompilasi paket secara manual seperti Sandy yang disebutkan di atas =) Juga harus memungkinkan untuk menggunakan
apt-get
atauportage
manajer paket di ...sumber
Saya pikir yang terbaik adalah membaca dokumentasi yang datang dengan program atau aplikasi spesifik yang ingin Anda instal. Biasanya ada readmes / READMEs di dalam tarballs (arsip sumber aplikasi yang biasanya dapat Anda unduh) atau bahkan INSTALL file untuk membaca dan belajar tentang apa cara yang disukai untuk menginstal aplikasi tersebut. Singkatnya: RTFM;)
sumber
Ringkasan untuk menggunakan Koleksi Port di FreeBSD:
Temukan Port
Port diatur berdasarkan kategori, jadi jika Anda tidak tahu kategori apa port itu, Anda harus menemukannya terlebih dahulu:
Terkadang ada terlalu banyak entri seperti itu. Saya pribadi lebih suka:
Gunakan
*
ketika mencari karena sering ada beberapa versi port yang tersedia. Argumen mendalam memastikan hasil pengembalian Anda tidak perlu berantakan dengan pertandingan yang tidak Anda inginkan.Konfigurasi
Seringkali, Anda ingin melakukan beberapa konfigurasi; perangkat lunak seperti Apache dan Postgres praktis memerlukannya. Ada tiga pilihan utama: baris perintah, lingkungan dan membuat file konfigurasi. Untuk memulai dengan baris perintah:
ini akan mencantumkan opsi konfigurasi default. Jika Anda menyukai default, Anda siap untuk dikompilasi dan diinstal. Jika tidak,
akan memunculkan kotak dialog di mana Anda dapat memilih opsi mana yang Anda inginkan. (Jangan menjadi bingung dengan ini dan
make configure
yang mengkonfigurasi port Anda dengan opsi yang Anda pilih!) Ini seringkali cukup tetapi untuk beberapa perangkat lunak, seperti Apache, sering ada konfigurasi kompleks yang tidak ditangani oleh dialog sederhana. Untuk ini, Anda juga harus melihat Makefile yang terkadang memberi Anda beberapa target tambahan untuk make yang akan memberi Anda lebih banyak informasi. Untuk melanjutkan contoh Apacheakan memberi Anda informasi tentang pengaturan modul yang Anda pilih, opsi utas dan sejenisnya. Jika default port Anda sebagian besar baik-baik saja dan Anda hanya ingin mengubah beberapa hal, Anda juga bisa meneruskan kunci = pasangan nilai seperti variabel lingkungan:
Anda juga dapat mengatur opsi sakelar melalui
-D
opsi:Namun untuk konfigurasi yang kompleks, baris perintah tidak akan berfungsi dengan baik dan Anda lebih baik tidak satu pun dari dua metode pertama yang efektif. Dalam hal ini Anda dapat membuat file konfigurasi dan meneruskannya
make
dengan variabel __MAKE_CONF. FreeBSD memiliki file konfigurasi default:/etc/make.conf
yang biasanya berisi informasi tentang port yang sebelumnya diinstal dan pengaturan sistem lainnya. Untuk memulai, buat file dengan opsi port Anda, panggil~/myport.mk
dan gabungkan file itu dengan /etc/make.conf:Anda kemudian dapat memeriksa konfigurasi Anda:
dan jika semuanya terlihat baik:
WASPADALAH! Jika Anda perlu menyesuaikan pengaturan konfigurasi setelah
make configure
atau seluruh atau sebagian instalasi, Anda harus menghapus konfigurasi Anda terlebih dahulu :Kegagalan untuk melakukannya akan menghasilkan interaksi tak terduga antara subsistem port,
make
default port Anda dan konfigurasi yang Anda inginkan.Itu agak banyak untuk ringkasan, tetapi kompleksitas konfigurasi sebagian besar tentang aplikasi, bukan port. Bash misalnya, tidak benar-benar memiliki opsi apa pun.
Instalasi
Ini adalah bagian yang mudah:
atau kamu bisa
yang hanya mengetik.
Cukup banyak. Jelas ada lebih banyak yang dapat Anda lakukan seperti ketergantungan dependensi dan opsi konfigurasi secara rekursif, pembaruan dengan tambalan dan sebagainya. Di sini saya akan mengarahkan Anda ke bagian Ports dari Buku Pegangan , halaman manual subsistem port (info bagus tentang target make tambahan) dan
make
halaman manual.sumber
Baru-baru ini saya mulai menggunakan "Checkinstall" ketika menginstal dari sumber di luar manajer paket saya. Itu membangun "paket" dari tarball pihak ke-3 yang kemudian dapat diinstal dan dikelola (dan dihapus) melalui alat manajer paket Anda.
Lihatlah artikel ini - http://www.linuxjournal.com/content/using-checkinstall-build-packages-source
sumber