projets:systemesreseaux:compiledebian
                Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| projets:systemesreseaux:compiledebian [2014/01/22 19:34] – créée christian.jacolot | projets:systemesreseaux:compiledebian [2024/04/16 22:26] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Compilation paquet source Debian ====== | ||
| + | |||
| + | ===== Prérequis pour la compilation des sources ===== | ||
| + | |||
| + | Pour compiler les sources d'un paquet Debian, il vous faut les paquets Debian suivants: | ||
| + | |||
| + |   * build essential < | ||
| + | |||
| + | |||
| + | ===== Compilation des sources provenant d'un paquet Debian ===== | ||
| + | |||
| + | Le but est de construire un fichier binaire exécutable (ou plusieurs suivant les applications) à partir des fichiers sources provenant d'un paquet Debian. | ||
| + | L' | ||
| + | < | ||
| + | $ cd travail | ||
| + | $ apt-cache search hello | ||
| + | $ apt-get source hello | ||
| + | </ | ||
| + | |||
| + | Plusieurs fichiers et répertoire sont apparus dans le répertoire de '' | ||
| + |   * fichier '' | ||
| + |   * fichier '' | ||
| + |   * fichier '' | ||
| + |   * et un répertoire '' | ||
| + | |||
| + | Production du paquet binaire à partir des sources: | ||
| + | < | ||
| + | $ cd hello-x.y # n' | ||
| + | $ dpkg-buildpackage -b | ||
| + | </ | ||
| + | |||
| + | Dans le répertoire parent, on obtient deux fichiers: | ||
| + |   * fichier '' | ||
| + |   * fichier '' | ||
| + | |||
| + | La commande suivante permet d' | ||
| + | < | ||
| + | $ dpkg -x hello_x.y-revision_debian_i386.deb . | ||
| + | </ | ||
| + | |||
| + | Pour juste afficher le contenu, utiliser la commande: | ||
| + | < | ||
| + | $ dpkg -c hello_x.y-revision_debian_i386.deb | ||
| + | </ | ||
| + | |||
| + | Pour extraire tous les fichiers (binaire et les fichiers Debian de gestion de ce paquet), il faut utiliser la commande: | ||
| + | < | ||
| + | $ dpkg-deb -R hello_x.y-revision_debian_i386.deb hello | ||
| + | </ | ||
| + | |||
| + | Et enfin pour installer notre paquet Debian fraichement reconstruit: | ||
| + | < | ||
| + | $ sudo dpkg -i hello_x.y-revision_debian_i386.deb | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Création d'un paquet source Debian ===== | ||
| + | |||
| + | ===== Prérequis pour la compilation des sources ===== | ||
| + | |||
| + | Pour créer une paquet Debian, il vous faut les paquets Debian suivants: | ||
| + | |||
| + |   * dh-make < | ||
| + | |||
| + | A partir des sources du projet GNU '' | ||
| + | |||
| + | Récupération des sources: | ||
| + | < | ||
| + | $ wget http:// | ||
| + | </ | ||
| + | |||
| + | Renommer l' | ||
| + | < | ||
| + | $ mv hello-2.9.tar.gz hello_2.9.orig.tar.gz # faites attention au _ | ||
| + | </ | ||
| + | |||
| + | Extraire les fichiers de l' | ||
| + | < | ||
| + | $ tar xf hello_2.9.orig.tar.gz | ||
| + | $ cd hello-2.9 | ||
| + | </ | ||
| + | |||
| + | Lancer l' | ||
| + | < | ||
| + | $ dh_make | ||
| + | # choisir s comme single binary | ||
| + | # entrée pour confirmer les champs suivants | ||
| + | </ | ||
| + | |||
| + | Un répertoire '' | ||
| + |   * control: données sur le paquet, description, | ||
| + | * changelog: données sur les modifications apportées aux sources | ||
| + | * rules: règles de construction du paquet | ||
| + | * copyright: information sur la license | ||
| + | |||
| + | |||
| + | Configurer l' | ||
| + | < | ||
| + | $ ./configure # choisir les options si besoin | ||
| + | </ | ||
| + | |||
| + | Création du paquet source: | ||
| + | < | ||
| + | $ dpkg-buildpackage  | ||
| + | </ | ||
| + | |||
| + | Cela nous génère les fichiers suivants dans le répertoire parent: | ||
| + |   * hello_2.9-1.debian.tar.gz, | ||
| + |   * hello_2.9-1.dsc, | ||
| + |   * hello_2.9-1_source.changes, | ||
| + | |||
| + | Pour construire les binaires à partir des sources (si on n'a pas besoin du paquet source, ): | ||
| + | < | ||
| + | $ dpkg-buildpackage -us -uc # utilise -b : construire un binaire | ||
| + | </ | ||
| + | |||
| + | Ce qui nous génère les fichiers suivants dans le répertoire parent: | ||
| + |   * hello_2.9-1_i386.deb, | ||
| + |   * hello_2.9-1_i386.changes, | ||
| + | * hello_2.9-1.dsc. | ||
| + | |||
| + | Il ne reste plus qu'à installer ce nouveau paquet binaire: | ||
| + | < | ||
| + | $ sudo dpkg -i hello_2.9-1_i386.deb | ||
| + | </ | ||
