./configure --prefix=***
Numéro 1 détermine où le paquet ira lorsqu'il sera installé et où il cherchera ses fichiers associés lorsqu'il sera exécuté. C'est ce que vous devez utiliser si vous ne faites que compiler quelque chose pour une utilisation sur un seul hôte.
make install DESTDIR=***
Numéro 2 est destiné à l'installation dans un répertoire temporaire qui n'est pas celui à partir duquel le package sera exécuté. Par exemple, ceci est utilisé lors de la construction de deb
paquets. La personne qui construit le paquet n'installe pas réellement tout à sa place finale sur son propre système. Il peut avoir déjà installé une version différente et ne pas vouloir la déranger, ou il peut même ne pas être root. Alors il utilise
./configure --prefix=/usr
donc le programme s'attendra à être installé en /usr
quand il s'exécute, alors
make install DESTDIR=debian/tmp
pour créer réellement la structure du répertoire.
make install prefix=***
Numéro 3 va l'installer à un endroit différent mais ne pas créer tous les répertoires en tant que DESTDIR=/foo/bar/baz
aurait. Il est couramment utilisé avec GNU stow via
./configure --prefix=/usr/local && make && sudo make install prefix=/usr/local/stow/foo
, qui installerait les binaires en /usr/local/stow/foo/bin
. Par comparaison,
make install DESTDIR=/usr/local/stow/foo
installerait des binaires dans /usr/local/stow/foo/usr/local/bin
.
Cela peut aider à illustrer l'utilisation de DESTDIR
et --prefix
(d'ici):
Installations multiples utilisant --prefix et DESTDIR :
Spécifiez un emplacement/option --prefix différent pour chaque construction - au moment de la configuration. Par exemple :
untar petsc tar ball ./configure --prefix=/opt/petsc/petsc-3.9.0-mpich --with-mpi-dir=/opt/mpich make make install DESTDIR=/tmp/petsc-pkg untar petsc tar ball ./configure --prefix=/opt/petsc/petsc-3.9.0-openmpi --with-mpi-dir=/opt/openmpi make make install DESTDIR=/tmp/petsc-pkg