URL: https://linuxfr.org/users/oumph/journaux/compilation-de-0-a-d-alpha-24-pour-debian-buster Title: Compilation de 0.A.D Alpha 24 pour Debian Buster Authors: Benoît Sibaud Date: 2021年02月28日T16:36:09+01:00 License: CC By-SA Tags: 0ad et debian Score: 22 La dépêche pour annoncer [0.A.D Alpha 24](https://linuxfr.org/redaction/news/sortie-de-0-a-d-alpha-24-xsayarsa) est encore en rédaction pour l'instant. Et pour tester la nouvelle version et aussi pour contribuer à la dépêche, j'ai compilé cette version pour Debian Buster (cette version n'étant [pas encore empaquetée](https://packages.debian.org/search?keywords=0ad) pour Debian, mais la [demande a été faite](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983408)). Idéalement vous attendriez la version de la distribution, mais si vous êtes pressés ET que vous ne voulez pas utiliser directement la version de l'éditeur, alors voici mes notes (principalement basées sur mon historique, donc il est possible qu'il faille légèrement adapter) : # De quoi compiler On commence par installer pas mal de choses pour compiler, notamment ce qui est décrit dans les _Build-Depends:_ du 0ad-0.0.23.1/debian/control , mais aussi certains paquets viennent du fait que je n'ai finalement pas utilisé le nvtt de la distribution ou des nouveautés de l'alpha 24. ```bash $ sudo apt install autoconf debhelper dpkg-dev libboost-dev libboost-filesystem-dev libcurl4-gnutls-dev libenet-dev libgloox-dev libicu-dev libminiupnpc-dev libnspr4-dev libnvtt-dev libogg-dev libopenal-dev libpng-dev libsdl2-dev libsodium-dev libvorbis-dev libwxgtk3.0-gtk3-dev libxcursor-dev libxml2-dev pkg-config python2 python3 zlib1g-dev rustc cargo libfmt-dev cmake ``` # Produire les binaires On va préparer le répertoire pour produire le paquet 0ad (ie. chopper les sources de la dernière version chez l'éditeur et chez Debian, et réutiliser l'empaquetage Debian existant). ```bash $ wget https://releases.wildfiregames.com/0ad-0.0.24b-alpha-unix-build.tar.xz $ apt source 0ad $ tar xvJf 0ad-0.0.24b-alpha-unix-build.tar.xz $ cd 0ad-0.0.24b-alpha $ cp -r ../0ad-0.0.23.1/debian . ``` Et appliquer quelques modifications : le changement de version de la libmozjs, la version de nvtt chez Debian insuffisante pour 0.A.D. et donc le recours à la version embarquée. Et pipeauter une version qui sera écrasée automatiquement lorsque le paquet sera officiellement disponible chez Debian (je créé volontairement une 0.0.23.2 au lieu d'une 0.0.24 pour cette raison). ```diff diff -ru 0ad-0.0.23.1/debian/changelog 0ad-0.0.24b-alpha/debian/changelog --- 0ad-0.0.23.1/debian/changelog 2020年08月18日 11:48:00.000000000 +0200 +++ 0ad-0.0.24b-alpha/debian/changelog 2021年02月27日 20:04:51.990191482 +0100 @@ -1,3 +1,8 @@ +0ad (0.0.23.2-42) unstable; urgency=medium + * Nope + + -- Oumph 2021年2月27日 19:00:00 +0100 + 0ad (0.0.23.1-5) unstable; urgency=medium * Fix FTBFS with gcc-10. (Closes: #956967) diff -ru 0ad-0.0.23.1/debian/install 0ad-0.0.24b-alpha/debian/install --- 0ad-0.0.23.1/debian/install 2020年08月18日 11:44:58.000000000 +0200 +++ 0ad-0.0.24b-alpha/debian/install 2021年02月27日 20:48:49.677838721 +0100 @@ -1,8 +1,12 @@ binaries/data/l10n usr/share/games/0ad/ binaries/system/libAtlasUI.so usr/lib/games/0ad/ binaries/system/libCollada.so usr/lib/games/0ad/ -binaries/system/libmozjs38-ps-release.so usr/lib/games/0ad/ +binaries/system/libmozjs78-ps-release.so usr/lib/games/0ad/ binaries/system/ActorEditor usr/lib/games/0ad/ +binaries/system/libnvtt.so usr/lib/games/0ad/ +binaries/system/libnvcore.so usr/lib/games/0ad/ +binaries/system/libnvimage.so usr/lib/games/0ad/ +binaries/system/libnvmath.so usr/lib/games/0ad/ binaries/system/pyrogenesis usr/games/ build/resources/0ad.appdata.xml usr/share/appdata/ build/resources/0ad.desktop usr/share/applications/ diff -ru 0ad-0.0.23.1/debian/rules 0ad-0.0.24b-alpha/debian/rules --- 0ad-0.0.23.1/debian/rules 2020年08月18日 11:48:00.000000000 +0200 +++ 0ad-0.0.24b-alpha/debian/rules 2021年02月27日 20:37:20.006952703 +0100 @@ -37,8 +37,8 @@ --bindir=/usr/games \ --libdir=/usr/lib/games/0ad \ --datadir=/usr/share/games/0ad \ - --with-system-nvtt \ -j$(PARALLEL_JOBS) +#OUMPH --with-system-nvtt $(MAKE) config=release verbose=1 -C build/workspaces/gcc \ -j$(PARALLEL_JOBS) ``` Reste juste à compiler/produire les paquets : ```bash $ fakeroot debian/rules binary $ ls -l 0ad_0.0.23.2*deb -rw-r--r-- 1 1000 1000 7573344 27 févr. 20:51 0ad_0.0.23.2-42_amd64.deb -rw-r--r-- 1 1000 1000 213483228 27 févr. 20:51 0ad-dbgsym_0.0.23.2-42_amd64.deb ``` # Produire le paquet des données du jeu ```bash $ apt source 0ad-data $ mkdir 0ad-0.0.24b-alpha-data $ cd 0ad-0.0.24b-alpha-data $ tar ../xvJf 0ad-0.0.24b-alpha-unix-data.tar.xz $ mv 0ad-0.0.24b-alpha/binaries . $ diff -ru 0ad-data-0.0.23.1/debian/changelog 0ad-0.0.24b-alpha-data/debian/changelog --- 0ad-data-0.0.23.1/debian/changelog 2021年01月01日 16:24:47.000000000 +0100 +++ 0ad-0.0.24b-alpha-data/debian/changelog 2021年02月27日 19:58:48.969725405 +0100 @@ -1,3 +1,8 @@ +0ad-data (0.0.23.2-42) unstable; urgency=medium + * Nope + + -- Oumph 2021年2月27日 19:00:00 +0100 + 0ad-data (0.0.23.1-1.1) unstable; urgency=medium * Non maintainer upload by the Reproducible Builds team. $ fakeroot debian/rules binary $ ls -l 0ad-data_0.0.23.2*deb -rw-r--r-- 1 1000 1000 843483732 27 févr. 20:25 0ad-data_0.0.23.2-42_all.deb -rw-r--r-- 1 1000 1000 778544 27 févr. 20:25 0ad-data-common_0.0.23.2-42_all.deb ``` Reste à installer les paquets 0ad, 0ad-data et 0ad-data-common, et on peut tester cette nouvelle version. ```bash $ sudo dpkg -i 0ad_0.0.23.2-42_amd64.deb 0ad-data_0.0.23.2-42_all.deb 0ad-data-common_0.0.23.2-42_all.deb ```

AltStyle によって変換されたページ (->オリジナル) /