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 paquets multiples dans un script, les
installations doivent être faites en tant qu'utilisateur root. Il
y a trois options générales qui peuvent être utilisées pour faire
cela :
-
Lancer le script entièrement en tant qu'utilisateur root
(pas recommandé).
-
Use the sudo
command from the Sudo-1.9.16p2 package.
-
Use su -c "command
arguments" (guillemet requis) 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
sélectionne 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.