Il s'agit de la commande dh_ocaml qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
dh_ocaml - calcule les dépendances des packages OCaml et fournit
SYNOPSIS
dh_ocaml [debhelper Options]
[--runtime-map=dev:exécution,...]
[--nodéfini-carte=dev:ignorer1,ignorer2]
[--somme de contrôle=str]
DESCRIPTION
dh_ocaml est un programme debhelper qui est chargé de remplir le ${ocaml:Provides} et
${ocaml:Depends} substitutions et les ajouter aux fichiers substvars.
dh_ocaml agit sur trois types de packages binaires : ceux qui font partie du développement d'OCaml
bibliothèques (généralement nommées libXXX-ocaml-dev ou libXXXX-camlp4-dev), celles qui fournissent le runtime
pour les bibliothèques OCaml (par exemple le plugin et la bibliothèque partagée, généralement nommés libXXX-ocaml ou
libXXXX-camlp4) et ceux qui fournissent des exécutables OCaml bytecode non personnalisés (c'est-à-dire
exécutables interprétés par /usr/bin/ocamlrun).
Sur un package spécifique, la convention est XXX pour le développement et XXX-base pour l'exécution (par exemple
ocaml-nox et ocaml-base-nox).
Sur les packages de la bibliothèque OCaml, dh_ocaml examinera d'abord les objets OCaml expédiés par le
emballer. Ensuite, dh_ocaml utilise le programme approprié sur eux pour collecter des informations sur
Modules OCaml définis et utilisés par eux. Les informations sur les unités définies seront utilisées pour
créer automatiquement l'entrée de registre OCaml md5sums pour le package de développement et d'exécution,
par exemple /var/lib/ocaml/md5sums/libXXX-ocaml-dev.md5sums. Informations sur les unités importées
sera à la place utilisé comme clé dans le registre OCaml md5sums pour récupérer la dépendance
informations pour le colis. Ces informations seront ensuite utilisées pour remplir le
${ocaml:Depends} sous-vars. Ils seront également utilisés pour remplir la variable ${ocaml:Provides}
qui sera remplacé par un nom de la forme libXXX-ocaml-dev-NNNN, où NNNN est un
somme de contrôle calculée à partir des interfaces des modules fournis par la bibliothèque.
Les fichiers objets (*.cm[ioax], *.cmx[as]) et les exécutables sont traités par ocamlobjinfo(1), si
de qualité.
Dépendances extraites du registre système md5sum, dh_ocaml ajoutera
${ocaml:Depends} :
1. dépendance de libXXX-ocaml-dev à libXXX-ocaml (partie d'exécution de la bibliothèque), si
il y a un paquet libXXX-ocaml dans debian/control ;
2. dépendance de libXXX-ocaml-dev aux packages libYYYY-ocaml-dev-NNNN appropriés ;
3. dépendance de libXXX-ocaml aux packages libYYYY-ocaml-NNNN appropriés.
4. dépendance de XXXX aux packages libYYYY-ocaml-NNNN appropriés.
Pour le package d'exécution ${ocaml:Provides} sera défini libXXXX-ocaml-NNNN et pour le développement
package vers libXXX-ocaml-dev-NNNN.
Le même type de relations est établi entre libXXXX-camlp4 et libXXXX-camlp4-dev
packages.
OPTIONS
--somme de contrôle str
Les sommes de contrôle sont automatiquement calculées à partir de l'interface exportée par le dev/runtime
emballer. Cette somme de contrôle ne peut afficher qu'une information partielle sur l'interface. Dans
dans ce cas, le calcul de la somme de contrôle peut être remplacé par une autre chaîne qui donne plus
informations sur les dépendances.
En règle générale, le package ocaml-nox/ocaml-base-nox n'utilise pas de somme de contrôle calculée mais le
version d'OCaml.
--nodéfini-carte dev1:unité1,unité2,...
Ignorez certaines unités exportées du package/runtime dev1. Cette option doit être utilisée avec
se soucier. Il s'agit d'un cas très particulier, lorsqu'une bibliothèque expédie un produit de remplacement
une autre bibliothèque. La plupart du temps, si une bibliothèque expédie la même unité, elle doit être
considéré comme une erreur.
Cette option peut être répétée autant que nécessaire pour définir ignorer pour tous les développements
packages.
--runtime-map dev1:runtime1,dev2:runtime2,...
L'association entre la partie développement des bibliothèques et leurs temps d'exécution est devinée par
dh_ocaml conformément à la politique d'emballage OCaml. Ainsi, libXXX-ocaml-dev est le nom
du package contenant la partie développement de la bibliothèque XXX tandis que libXXX-ocaml, si
any, est le nom du package qui envoie le runtime correspondant. libXXXX-camlp4-dev
et les packages libXXXX-camlp4 sont gérés de la même manière.
En utilisant --runtime-map, vous pouvez remplacer le nom du package de développement des paires, runtime
nom du paquet. La valeur passée à --runtime-map n'admet aucun espace et doit être une virgule
liste séparée d'éléments. Chaque élément peut être un nom de package unique (indiquant que
name correspond à la partie développement d'une bibliothèque) ou deux noms de packages séparés
par deux points (indiquant que le premier correspond à la partie développement d'une bibliothèque,
tandis que le second à sa partie d'exécution qui l'accompagne).
Chaque paquet qui ne suit pas libXXX-ocaml-dev/libXXX-ocaml,
libXXXX-camlp4-dev/libXXXX-camlp4 ou qui n'est pas défini dans la carte d'exécution sont
considéré comme un paquet binaire et ne sera recherché que pour le bytecode.
Utilisez dh_ocaml en ligne en utilisant les services onworks.net