dh_makeshlibs - Créer automatiquement le fichier shlibs et
exécuter dpkg-gensymbols
dh_makeshlibs [
options_de_debhelper]
[
-mnuméro-majeur] [
-V[dépendances]]
[
-n] [
-Xélément] [
--
paramètres]
dh_makeshlibs est le programme de la suite debhelper qui automatise la
recherche des bibliothèques partagées et produit un fichier
« shlibs » pour celles qu'il trouve.
Il s'assure aussi que ldconfig est invoqué durant l'installation et la
suppression lorsqu'il trouve des bibliothèques partagées. Depuis
debhelper 9.20151004, cela est effectué par un trigger de dpkg.
Dans les anciennes versions de debhelper,
dh_makeshlibs
générait un script de maintenance pour cela.
Depuis debhelper 12.3,
dh_makeshlibs ajoutera par défaut
une ligne
udeb supplémentaire pour les udebs dans le fichier
shlibs, quand l'udeb a le même nom que le fichier deb suivi par le
suffixe « -udeb » (par exemple, si le fichier deb
s'appelle « libtoto1 », alors debhelper
détectera automatiquement l'udeb s'il s'appelle
« libtoto1-udeb »). Veuillez utiliser les options
--add-udeb et
--no-add-udeb ci-dessous quand la détection
automatique est insuffisante.
Si auparavant vous utilisiez
--add-udeb et envisagez de migrer vers
l'utilisation de la nouvelle fonctionnalité de détection
automatique de 12.3, n'oubliez pas de vérifier que les fichiers
DEBIAN/shlibs résultants sont conformes aux prévisions.
Il y a quelques cas particuliers connus où la détection
automatique est insuffisante. Cela comprend les cas où l'udeb renferme
des fichiers de bibliothèque issus de plusieurs paquets deb normaux ou
quand les paquets ne suivent pas les conventions de nommage escomptées.
- debian/paquet.shlibs
- Si présent, installe ce fichier dans le paquet en
tant que DEBIAN/shlibs. S'il est omis, debhelper génèrera
automatiquement un fichier shlibs s'il détecte une
bibliothèque.
Veuillez noter que, dans les niveaux de compatibilité 9 et
précédents, ce fichier était installé par
dh_installdeb(1) plutôt que par dh_makeshlibs.
- debian/paquet.symbols
- debian/paquet.symbols.arch
- Ces fichiers de symboles, s'ils existent, sont transmis
à dpkg-gensymbols(1) pour être traités et
installés. Préciser le nom de l'architecture avec
arch s'il est nécessaire de fournir des fichiers de symboles
différents pour diverses architectures.
-
-mnuméro-majeur,
--major=numéro-majeur
- Utilise le numéro majeur indiqué après
le paramètre -m afin de préciser le numéro
majeur de version de la bibliothèque, au lieu d'essayer de le
déterminer avec objdump. Ce paramètre est devenu beaucoup
moins utile qu'autrefois où ce programme se basait sur les noms des
fichiers de bibliothèque et non sur l'utilisation d'objdump.
-
-V, -Vdépendances
-
--version-info,
--version-info=dépendances
- Si un fichier shlibs est créé par ce
programme, cette option contrôle quelle version sera
utilisée dans la relation de dépendance.
Depuis la version 12, dh_makeshlibs utilise
-VUpstream-Version par défaut. Jusqu'à la
version 11, le comportement par défaut imitait
-VNone.
dh_makeshlibs peut générer des dépendances de
trois façons.
- -VUpstream-Version
- La dépendance sera de la forme
« paquet (>=
version) ». Upstream-Version est
sensible à la casse est doit être écrit exactement
comme cela.
C'est une disposition conservatoire qui garantit que les dépendances
des autres paquets envers la bibliothèque partagée sont
aussi strictes qu'elles le doivent (à moins que la
bibliothèque soit sujette à des changements d'ABI sans mise
à jour des numéros de version amont).
Le revers de cela est que les paquets pourraient avoir des
dépendances qui sont trop restreintes (mais un fichier de symboles
peut atténuer le problème). Ce n'est souvent qu'un
inconvénient mineur et temporaire, préférable
à un échec dû à l'oubli de la mise à
jour d'une information de dépendance.
Ce format explicite a été ajouté à
debhelper/11.3. Dans les versions précédentes, une option
-V sans aucune information de dépendance était
utilisée (ce qui fonctionne toujours).
- -VNone
- La dépendance sera de la forme
« paquet ». None est sensible
à la casse est doit être écrit exactement comme cela.
Ce format n'est pas sécurisé, sauf si l'amont ne modifie pas
son ABI d'aucune façon. Cependant, la plupart des équipes
amont améliorent leurs interfaces au cours du temps, et il est
recommandé d'utiliser -VUpstream-Version (ou l'une des
autres formes de -Vdépendances).
Par ailleurs, cela pourrait être suffisant si (et seulement si) le
paquet utilise le versionnement des symboles (voir
dpkg-gensymbols(1)) et ne produit aucun paquet udeb. Les
symboles ne sont pas pris en charge pour les paquets udeb, qui ne
s'appuient que sur shlibs pour la gestion des dépendances.
-
-Vrelation-paquet
- Dans ce cas, la valeur donnée à -V
sera utilisée comme une relation de dépendance.
relation-paquet devrait être de la forme «
paquet (>= version) ».
N'oubliez pas d'inclure le nom de paquet.
Veuillez noter que debhelper utilisera la valeur telle quelle sans
vérification de propreté ni de modification. Dans de
rares cas, cela est nécessaire pour générer
une dépendance sur un paquet différent que celui qui
contient la bibliothèque.
Au moment de choisir une valeur pour cette option, gardez à l'esprit que
si le paquet fournit un fichier de symboles, ce dernier est souvent
préféré au fichier shlibs pour les paquets .deb
habituels. Consultez
dpkg-shlibdeps(1) pour plus d'informations sur ce
sujet.
-
-n, --no-scripts
- N'ajoutez pas l'action différée
(« trigger ») même s'il semble que le
paquet en a besoin. L'option est nommée --no-scripts pour
des raisons historiques car dh_makeshlibs générait
précédemment un script de maintenance qui appelait
ldconfig.
-
-Xélément,
--exclude=élément
- Permet d'exclure du traitement des bibliothèques
partagées les fichiers qui comportent élément
n'importe où dans leur nom.
-
--add-udeb=udeb
- Ajoute une ligne supplémentaire, pour les udebs,
dans le fichier shlibs et rend les udebs dépendants du paquet
indiqué par udeb plutôt que les rendre
dépendants du paquet normal de la bibliothèque.
Cette option est seulement utile pour les cas spéciaux où
debhelper ne peut pas détecter automatiquement le nom du paquet
udeb, où le paquet udeb contient des bibliothèques issues de
plusieurs paquets deb, ou encore quand le paquet udeb contient des
bibliothèques absentes du paquet deb.
- --no-add-udeb
- Pas d'ajout de ligne udeb dans le fichier shlibs. Cela peut
être utilisé pour désactiver la détection
automatique des paquets udeb.
Cela peut être utile au cas où vous ne voulez pas du tout de
fichier shlibs pour le paquet udeb parce qu'aucun paquet n'en
dépendra. Ce peut être, par exemple, parce que l'ajout d'un
paquet udeb pour la bibliothèque était
« exagéré » et que la
bibliothèque est incorporée dans un paquet udeb
différent.
-
-- paramètres
- Fournit paramètres à
dpkg-gensymbols(1).
- dh_makeshlibs -VNone
- En admettant que le paquet s'appelle libtoto1, cette
commande produit un fichier shlibs tel que : libtoto 1
libtoto1
- dh_makeshlibs -VUpstream-Version
- En admettant que la version actuelle du paquet soit 1.1-3,
cette commande produit un fichier shlibs tel que :
libtoto 1 libtoto1 (>= 1.1)
- dh_makeshlibs -V `libtoto1 (>= 1.0)'
- Produit un fichier shlibs tel que :
libtoto 1 libtoto1 (>= 1.0)
debhelper(7)
Ce programme fait partie de debhelper.
Joey Hess <
[email protected]>
Cette traduction est maintenue à l'aide de l'outil po4a
<URL:
http://po4a.alioth.debian.org/> par l'équipe francophone de
traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<
[email protected]> ou par un rapport de bogue sur le
paquet debhelper.
Vous pouvez toujours avoir accès à la version anglaise de ce
document en utilisant la commande « man -L C <section>
<page_de_man> ».