<Sebelumnya | Konten | Selanjutnya>
6.3.2.3. Manajemen Paket Gaya Symlink
Ini adalah variasi dari teknik manajemen paket sebelumnya. Setiap paket diinstal mirip dengan skema sebelumnya. Tapi alih-alih membuat symlink, setiap file di-symlink ke dalam / usr hirarki. Ini menghilangkan kebutuhan untuk memperluas variabel lingkungan. Meskipun symlink dapat dibuat oleh pengguna untuk mengotomatisasi pembuatan, banyak manajer paket telah ditulis menggunakan pendekatan ini. Beberapa yang populer termasuk Stow, Epkg, Graft, dan Depot.
Instalasi perlu dipalsukan, sehingga paket berpikir bahwa itu diinstal di / usr meskipun pada kenyataannya dipasang di /usr/pkg hirarki. Menginstal dengan cara ini biasanya bukanlah tugas yang sepele. Misalnya, pertimbangkan bahwa Anda menginstal paket libfoo-1.1. Petunjuk berikut mungkin tidak menginstal paket dengan benar:
./configure --prefix=/usr/pkg/libfoo/1.1 buat
make install
./configure --prefix=/usr/pkg/libfoo/1.1 buat
make install
Instalasi akan berfungsi, tetapi paket dependen mungkin tidak tertaut ke libfoo seperti yang Anda harapkan. Jika Anda mengkompilasi paket yang tertaut ke libfoo, Anda mungkin memperhatikan bahwa paket tersebut ditautkan ke /usr/pkg/libfoo/1.1/lib/libfoo.so. 1 alih-alih /usr/lib/libfoo.so.1 seperti yang Anda harapkan. Pendekatan yang benar adalah dengan menggunakan MENGHANCURKAN strategi untuk memalsukan instalasi paket. Pendekatan ini bekerja sebagai berikut:
./configure --prefix=/usr buat
buat DESTDIR=/usr/pkg/libfoo/1.1 install
./configure --prefix=/usr buat
buat DESTDIR=/usr/pkg/libfoo/1.1 install
Sebagian besar paket mendukung pendekatan ini, tetapi ada beberapa yang tidak. Untuk paket yang tidak sesuai, Anda mungkin perlu menginstal paket secara manual, atau Anda mungkin merasa lebih mudah untuk menginstal beberapa paket bermasalah ke /memilih.