Installation de Gedit
La première tâche consiste à installer les bibliothèques requises.
Comme tous les paquets ont les mêmes instructions de compilation,
ils peuvent être construits en une seule fois avec une boucle.
Note
Pour l'installation de plusieurs paquets dans un script, les
installations doivent être faites en tant qu'utilisateur root. Il
y a trois possibilités génériques pour cela :
-
Exécuter le script complet en tant qu'utilisateur root (pas
recommandé).
-
Utiliser la commande sudo du paquet Sudo-1.9.17p2.
-
Utiliser su -c "command
arguments" (les guillemets sont
nécessaires) qui demandera le mot de passe root à chaque
itération de la boucle.
Une façon de gérer cette situation est de créer une petite
fonction bash qui
choisit automatiquement la méthode appropriée. Une fois que la
commande est initialisée dans l'environnement, il n'est plus
nécessaire de le refaire.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Tous les paquets fournissent une suite de tests. Si vous souhaitez
les exécuter, vous pouvez soit commenter le rm -rf … ci-dessous, pour
qu'après l'installation des paquets, vous puissiez revenir au
répertoire correspondant et exécuter ninja test, soit effectuer les
constructions individuelles, et exécuter les tests de chacun des
paquets. Autrement, vous pouvez décommenter la ligne #ninja test … et à la fin,
vérifier les résultats des tests avec :
grep -A5 Ok: *test.log
Le test test-action map de Libgedit-amtk est connu pour échouer.
Tout d'abord, démarrez un sous-shell qui terminera en cas
d'erreur :
bash -e
L'ordre des constructions est important. Installez les dépendances
de Gedit en exécutant les
commandes suivantes :
for package in \
libgedit-amtk-5.9.1.tar.bz2 \
libgedit-gtksourceview-299.5.0.tar.bz2 \
libgedit-gfls-0.3.0.tar.bz2 \
libgedit-tepl-6.13.0.tar.bz2
do
packagedir=${package%.tar*}
echo "Building $packagedir"
tar -xf ../$package
pushd $packagedir
cd build
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false
ninja
#ninja test 2>&1 | tee ../../$packagedir-test.log
as_root ninja install
popd
rm -rf $packagedir
done
Enfin, sortez du shell démarré précédemment :
exit
Installez maintenant gedit
lui-même en exécutant les commandes suivantes :
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false &&
ninja
Pour tester les résultats exécutez ninja test.
Maintenant en tant qu'utilisateur root
:
ninja install
Note
Si vous avez installé le paquet dans votre système en utilisant
une méthode « DESTDIR », /usr/share/glib-2.0/schemas/gschemas.compiled
n'a pas été mis à jour/créé. Créez (ou mettez à jour) le fichier
en utilisant la commande suivante en tant qu'utilisateur
root
:
glib-compile-schemas /usr/share/glib-2.0/schemas
Explication des commandes
--buildtype=release
:
spécifie le type de construction convenant aux versions stables de
ce paquet, comme la valeur par défaut produit des binaires non
optimisés.
-D gtk_doc=false
: ce
paramètre désactive la génération de la documentation de l'API.
Supprimez-le si vous avez installé GTK-Doc-1.34.0
et souhaitez générer la documentation de l'API.