Saya menginstal program (menyebutnya, misalnya, progA
) dengan membangunnya dari kode sumber, dan akhirnya memanggil sudo make install
dan sudo ldconfig
.
Namun, sepertinya apt-get
belum mendapatkan memo, karena ketika menginstal progB
, yang tergantung pada progA
, apt-get
merekomendasikan saya juga menginstal progA
. Mengapa ini, dan apa yang bisa saya lakukan?
apt
package-management
make
Braiam
sumber
sumber
progB
secara manual juga ...Jawaban:
TL; DR
checkinstall
adalah teman Anda ;)Setelah instalasi dengan
sudo make install
manajer paket Anda sama sekali tidak tahu tentang instalasi ini. Tapi ia tahu semua tentang paket dengan nama yang sama di repositori Ubuntu atau dalam PPA.Gunakan
sudo checkinstall
alih-alihsudo make install
dan gunakan versi yang lebih tinggi sebagai versi di repositori untuk memastikan, bahwa manajer paket Anda menerima versi ini sebagai ketergantungan yang benar untukProgB
.Informasi lebih lanjut:
checkinstall
benar-benar bagus, karena mengikuti apa yangmake install
akan dilakukan perintah, untuk mengetahui bagaimana membangun sebuah paket.Ini berarti bahwa jika Anda menginstal sebuah program menggunakan
make install
, tetapi kemudian ingin bertobat atas dosa-dosa Anda, yang harus Anda lakukan adalahsudo checkinstall -D make install
, dan perintah itu akan:ikuti
make install
untuk mencari tahu apa fungsinyacopy-cat
make install
, kecuali dalam bentuk paket * .debinstal dari paket (persis seperti
make install
seharusnya, diberikan poin 1)) kecuali juga beriapt-get
tahu tentang hal itu, dan dengan demikian menimpa semua file persis di manamake install
akan menempatkan mereka selama Anda memilih YA untuk memasukkan file-file yang dimasukkan kemake install
dalam direktori home dalam paket juga - beberapa opsi selamacheckinstall
proses akan membiarkan Anda memilih (jelas meskipun, ada pilihan sehingga Anda dapat menggunakannya berdasarkan kasus per kasus)Bonus: Anda juga dapat menghapus paket (menyebutnya
progA
kembali) yang diinstal menggunakanmake install
odes yang tidak memilikimake uninstall
dukungan dengan mengikuticheckinstall
proses yang diuraikan sejauh ini, dan kemudian cukup melakukan:sumber
checkinstall
- DUNIA perlu tahu tentang ini!Tiga opsi:
buat paket palsu untuk
progA
: Bagaimana memalsukan versi paket yang diinstal? (ada contoh luas untuk TeXlive) .buat paket untuk
progA
, lebih mudah jika memilikicheckinstall
opsi: Bagaimana cara menipu dependensi apt?Bangun juga
progB
dari sumber.sumber
progA
Anda kompilasi dan instalapt-get
versi. 5. Instalapt-get
paket melalui versi yang dikompilasi dan berharap yang terbaik.Saya akan merekomendasikan menggunakan
uupdate
daridevscripts
dan membangun paket seperti aslinya dibuat sebelumnya.Instal paket yang diperlukan
Unduh paket lama dari repositori resmi (akan digunakan
MediaWiki
sebagai contoh) dan tar-ball baru dari hulu.Jalankan
uupdate
untuk membuat folder sumber baru dari tar-ball hulu dan yang lamadebian/control
Sekarang Anda harus memeriksa apakah Anda perlu membuat perubahan pada
debian/control
file dll. Jika sudah selesai, Anda dapat membangun paket deb dan menginstalnyasumber