Wiki » Historique » Version 2
Daniel Dehennin, 20/01/2016 12:21
| 1 | 1 | Daniel Dehennin | {{toc}} |
|---|---|---|---|
| 2 | 1 | Daniel Dehennin | |
| 3 | 1 | Daniel Dehennin | h1. Compilation pour EOLE 2.5 |
| 4 | 1 | Daniel Dehennin | |
| 5 | 1 | Daniel Dehennin | Un problème de compilation sur Ubuntu Trusty nous oblige a utiliser un contournement (#12734). |
| 6 | 1 | Daniel Dehennin | |
| 7 | 2 | Daniel Dehennin | h2. Construction des paquets |
| 8 | 1 | Daniel Dehennin | |
| 9 | 2 | Daniel Dehennin | h3. Construction du paquet source |
| 10 | 2 | Daniel Dehennin | |
| 11 | 1 | Daniel Dehennin | Sur votre machine de développement: |
| 12 | 1 | Daniel Dehennin | |
| 13 | 1 | Daniel Dehennin | # Tout préparer pour que la branche de packaging soit prête |
| 14 | 1 | Daniel Dehennin | # Mettre à jour le fichier *@debian/changelog@* |
| 15 | 1 | Daniel Dehennin | ## Ajouter une entrée à la main (déconseillé) |
| 16 | 1 | Daniel Dehennin | ## Utiliser *@git-buildpackage@* |
| 17 | 1 | Daniel Dehennin | <pre> |
| 18 | 1 | Daniel Dehennin | moi@work:~/src/e2guardian/repo (dist/eole2.5/master>)$ gbp dch -a -D eole-2.5-unstable --debian-branch=dist/eole/2.5/master |
| 19 | 1 | Daniel Dehennin | gbp:info: Found tag for topmost changelog version 'XXXX...' |
| 20 | 1 | Daniel Dehennin | gbp:info: Continuing from commit 'XXXX...' |
| 21 | 1 | Daniel Dehennin | libdistro-info-perl is not installed, Debian release names are not known. |
| 22 | 1 | Daniel Dehennin | libdistro-info-perl is not installed, Ubuntu release names are not known. |
| 23 | 1 | Daniel Dehennin | libdistro-info-perl is not installed, Debian release names are not known. |
| 24 | 1 | Daniel Dehennin | libdistro-info-perl is not installed, Ubuntu release names are not known. |
| 25 | 1 | Daniel Dehennin | debchange warning: Unable to determine Debian's backport distributions. |
| 26 | 1 | Daniel Dehennin | debchange warning: Recognised distributions are: unstable, testing, stable, |
| 27 | 1 | Daniel Dehennin | oldstable, experimental, {testing-,stable-,oldstable-,}proposed-updates, |
| 28 | 1 | Daniel Dehennin | {testing,stable,oldstable}-security and UNRELEASED. |
| 29 | 1 | Daniel Dehennin | Using your request anyway. |
| 30 | 1 | Daniel Dehennin | debchange: Did you see that warning? Press RETURN to continue... |
| 31 | 1 | Daniel Dehennin | |
| 32 | 1 | Daniel Dehennin | moi@work:~/src/e2guardian/repo (dist/eole2.5/master *>)$ git add debian/changelog |
| 33 | 1 | Daniel Dehennin | moi@work:~/src/e2guardian/repo (dist/eole2.5/master +>)$ git commit -m "Update debian/changelog for package $(dpkg-parsechangelog -SVersion)" |
| 34 | 1 | Daniel Dehennin | </pre> |
| 35 | 1 | Daniel Dehennin | # Créer le paquet source |
| 36 | 1 | Daniel Dehennin | ## Télécharger le fichier *@.orig.tar.gz@* dans le répertoire parent |
| 37 | 1 | Daniel Dehennin | <pre> |
| 38 | 1 | Daniel Dehennin | moi@work:~/src/e2guardian/repo (dist/eole2.5/master >)$ wget -P ../ http://eole.ac-dijon.fr/eole/pool/main/e/e2guardian/e2guardian_$(dpkg-parsechangelog -SVersion | sed -e 's,-.*,,').orig.tar.gz |
| 39 | 1 | Daniel Dehennin | </pre> |
| 40 | 1 | Daniel Dehennin | ## Construire le paquet source |
| 41 | 1 | Daniel Dehennin | <pre> |
| 42 | 1 | Daniel Dehennin | moi@work:~/src/e2guardian/repo (dist/eole2.5/master >)$ dpkg-buildpackage -nc -d -S |
| 43 | 1 | Daniel Dehennin | </pre> |
| 44 | 1 | Daniel Dehennin | |
| 45 | 1 | Daniel Dehennin | |
| 46 | 2 | Daniel Dehennin | h3. Construction des paquets binaires |
| 47 | 1 | Daniel Dehennin | |
| 48 | 1 | Daniel Dehennin | Sur une Debian Wheezy pour chaque architecture, faire les opérations suivantes: |
| 49 | 1 | Daniel Dehennin | |
| 50 | 1 | Daniel Dehennin | # Copier le paquet source sur la machine de compilation: le fichier *@.dsc@* et tous les fichiers listés par celui-ci (Section *@Files:@* du fichier *@.dsc@*) |
| 51 | 1 | Daniel Dehennin | # Décompacter le paquet source et se positionner dans le répertoire: |
| 52 | 1 | Daniel Dehennin | <pre> |
| 53 | 1 | Daniel Dehennin | eole@wheezy:~$ dpkg-source -x *.dsc |
| 54 | 1 | Daniel Dehennin | gpgv: ressource de bloc de clef « /home/eole/.gnupg/trustedkeys.gpg » : erreur d'ouverture de fichier |
| 55 | 1 | Daniel Dehennin | gpgv: Signature faite le mer. 20 janv. 2016 11:24:15 CET avec la clef DSA d'identifiant F562870C |
| 56 | 1 | Daniel Dehennin | gpgv: Impossible de vérifier la signature : clef publique introuvable |
| 57 | 1 | Daniel Dehennin | dpkg-source: avertissement: impossible de vérifier la signature sur ./e2guardian_3.2.0-3.dsc |
| 58 | 1 | Daniel Dehennin | dpkg-source: info: extraction de e2guardian dans e2guardian-3.2.0 |
| 59 | 1 | Daniel Dehennin | dpkg-source: info: extraction de e2guardian_3.2.0.orig.tar.gz |
| 60 | 1 | Daniel Dehennin | dpkg-source: info: extraction de e2guardian_3.2.0-3.debian.tar.xz |
| 61 | 1 | Daniel Dehennin | dpkg-source: info: mise en place de 0001-Support-of-one-log-file-per-e2-instance.patch |
| 62 | 1 | Daniel Dehennin | |
| 63 | 1 | Daniel Dehennin | eole@wheezy:~$ cd e2guardian-* |
| 64 | 1 | Daniel Dehennin | eole@wheezy:~/e2guardian-3.2.0$ |
| 65 | 1 | Daniel Dehennin | </pre> |
| 66 | 1 | Daniel Dehennin | # Installer les dépendances minimales |
| 67 | 1 | Daniel Dehennin | <pre> |
| 68 | 1 | Daniel Dehennin | eole@wheezy:~/e2guardian-3.2.0$ sudo apt-get install build-essential fakeroot |
| 69 | 1 | Daniel Dehennin | </pre> |
| 70 | 1 | Daniel Dehennin | # Installer les dépendances de compilation → voir *@debian/control@* |
| 71 | 1 | Daniel Dehennin | # Modifier les fichiers d’entête afin d’augmenter *@FD_SETSIZE@* |
| 72 | 1 | Daniel Dehennin | <pre> |
| 73 | 1 | Daniel Dehennin | eole@wheezy:~/e2guardian-3.2.0$ rgrep -l 'FD_SETSIZE[[:space:]]*[[:digit:]]' /usr/include/ | sudo xargs sed -E 's,(FD_SETSIZE[[:space:]]+)[[:digit:]]+,\18192,' |
| 74 | 1 | Daniel Dehennin | </pre> |
| 75 | 1 | Daniel Dehennin | # Compiler le paquet binaire pour l’architecture courante |
| 76 | 1 | Daniel Dehennin | <pre> |
| 77 | 1 | Daniel Dehennin | eole@wheezy:~/e2guardian-3.2.0$ dpkg-buildpackage -B -uc |
| 78 | 1 | Daniel Dehennin | </pre> |
| 79 | 1 | Daniel Dehennin | |
| 80 | 1 | Daniel Dehennin | h2. Envoi des paquets sur le dépôt Debian |
| 81 | 1 | Daniel Dehennin | |
| 82 | 1 | Daniel Dehennin | Afin d’outre passer la compilation automatique EOLE, il faut : |
| 83 | 1 | Daniel Dehennin | |
| 84 | 1 | Daniel Dehennin | # Envoyer les paquets binaires en premier |
| 85 | 1 | Daniel Dehennin | # Envoyer le pqauets source en dernier |
| 86 | 1 | Daniel Dehennin | |
| 87 | 1 | Daniel Dehennin | h3. Paquets binaires |
| 88 | 1 | Daniel Dehennin | |
| 89 | 1 | Daniel Dehennin | Il faut signer le fichier *@.changes@* par l’utilisateur de compilation (*@buildd@pollux.eole.lan@*): |
| 90 | 1 | Daniel Dehennin | |
| 91 | 1 | Daniel Dehennin | # Créer un répertoire temporaire sur *@pollux@* |
| 92 | 1 | Daniel Dehennin | <pre> |
| 93 | 1 | Daniel Dehennin | buildd@pollux:~$ mkdir temp |
| 94 | 1 | Daniel Dehennin | buildd@pollux:~$ cd temp |
| 95 | 1 | Daniel Dehennin | </pre> |
| 96 | 1 | Daniel Dehennin | # Envoies les fichiers sur *@buildd@pollux.eole.lan@* |
| 97 | 1 | Daniel Dehennin | <pre> |
| 98 | 1 | Daniel Dehennin | eole@wheezy:~/e2guardian-3.2.0$ scp ../*.changes ../*.deb buildd@pollux.eole.lan:temp/ |
| 99 | 1 | Daniel Dehennin | </pre> |
| 100 | 1 | Daniel Dehennin | # Signer le paquet binaire |
| 101 | 1 | Daniel Dehennin | <pre> |
| 102 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ debsign -kbuildd@listeseole.ac-dijon.fr *.changes |
| 103 | 1 | Daniel Dehennin | </pre> |
| 104 | 1 | Daniel Dehennin | # Envoyer le paquet sur le dépôt Debian d’EOLE |
| 105 | 1 | Daniel Dehennin | <pre> |
| 106 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ dput eole *.changes |
| 107 | 1 | Daniel Dehennin | </pre> |
| 108 | 1 | Daniel Dehennin | # Nettoyer le répertoire |
| 109 | 1 | Daniel Dehennin | <pre> |
| 110 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ rm -f * |
| 111 | 1 | Daniel Dehennin | </pre> |
| 112 | 1 | Daniel Dehennin | |
| 113 | 1 | Daniel Dehennin | h3. Paquet source |
| 114 | 1 | Daniel Dehennin | |
| 115 | 1 | Daniel Dehennin | Il faut signer le fichier *@_source.changes@* par l’utilisateur de compilation (*@buildd@pollux.eole.lan@*): |
| 116 | 1 | Daniel Dehennin | # Envoies les fichiers sur *@buildd@pollux.eole.lan@:temp/* : les fichier *@_source.changes@*, *@.dsc@* et tous les fichiers listés par ce dernier (Section *@Files:@* du fichier *@.dsc@*) |
| 117 | 1 | Daniel Dehennin | # Signer le paquet source |
| 118 | 1 | Daniel Dehennin | <pre> |
| 119 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ debsign -kbuildd@listeseole.ac-dijon.fr *.changes |
| 120 | 1 | Daniel Dehennin | </pre> |
| 121 | 1 | Daniel Dehennin | # Envoyer le paquet sur le dépôt Debian d’EOLE |
| 122 | 1 | Daniel Dehennin | <pre> |
| 123 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ dput eole *.changes |
| 124 | 1 | Daniel Dehennin | </pre> |
| 125 | 1 | Daniel Dehennin | # Nettoyer le répertoire |
| 126 | 1 | Daniel Dehennin | <pre> |
| 127 | 1 | Daniel Dehennin | buildd@pollux:~/temp$ cd |
| 128 | 1 | Daniel Dehennin | buildd@pollux:~$ rm -rf temp/ |
| 129 | 1 | Daniel Dehennin | </pre> |