10.102. Yaboot-1.3.17

Le paquet Yaboot contient un chargeur d'amorçage PowerPC pour les machines avec l'Open Firmware comme les Macintoshs NewWorld.

10.102.1. Installation de Yaboot

Les distributions multilib existantes modifient gcc pour que ses programmes sortent en 32 bits par défaut. Comme notre gcc utilise 64 bits par défaut, nous devons passer les options appropriées à la fois au compilateur et à l'éditeur de lien. Pour éviter des échecs de construction à cause d'avertissements du compilateur, le drapeau -Werror est supprimé. Le Makefile remplace les CC et ignore les LDFLAGS en faveur de ses propres variables, donc nous devons utiliser les sed suivants pour compiler et installer correctement.

sed -i -e "s/\(-print-libgcc-file-name\)/${BUILD32} \1/" \
    -e "s/-Werror//" \
    -e "s/\(-Bstatic\)/-melf32ppclinux \1/" Makefile

Voici la signification des paramètres de sed :

"s/\(-print-libgcc-file-name\)/${BUILD32} \1/"

Cela choisi un emplacement approprié dans la variable lgcc du Makefile et insère le drapeau pour forcer gcc à créer du code 32 bits lors de la compilation de yaboot.

"s/-Werror//"

Cela supprime le drapeau -Werror du Makefile.

"s/\(-Bstatic\)/-melf32ppclinux \1/"

Cela choisi la fin du LDFLAGS que le Makefile envoie à l'éditeur de lien pour créer le chargeur en deuxième étape de Linux, et insère un drapeau pour forcer ld à utiliser l'émulation 32 bits appropriée choisie depuis la sortie de ld -V.

Le correctif suivant ajoute les fonctions stubs pour les nouvelles versions de e2fsprogs :

patch -Np1 -i ../yaboot-1.3.17-stubfuncs-1.patch

Le correctif suivant ajoute le support de Parted à yabootconfig :

patch -Np1 -i ../yaboot-1.3.17-parted-1.patch

La page de manuel fournie parle de /usr/local. Ce sed corrige cela :

sed -i 's%/usr/local%/usr%' man/*

Compilez le paquet :

CFLAGS="${BUILD32}" make PREFIX=/usr

Installez le paquet :

[Important]

Important

L'installation multilib de yaboot peut échouer s'il vous manque le moindre correctif ou sed, ou que vous oubliez la variable CFLAGS. ld vous avertira, mais l'installation aura l'air de s'être terminée correctement. Cela pourrait résulter en un système impossible à démarrer, donc vous devrez sauvegarder la sortie pour la vérifier.

make PREFIX=/usr install 2>&1 | tee instlog

Pour vous assurer que l'installation est correcte, lancez la commande suivante :

grep 'powerpc:common64' instlog

Si la commande vous a donné le moindre message (... est incompatible avec la sortie powerpc:common) la construction de yaboot est cassée et vous devrez corrigez vos erreurs et recommencer.

10.102.2. Contenu de Yaboot

Programmes installés: addnote, mkofboot (lien vers ybin), ofboot, ofpath, yaboot, yabootconfig, ybin
Fichiers installés: yaboot.conf

Descriptions courtes

addnote

Pour les machines IBM CHRP, ajoute une entrée PT_NOTE dans les en-têtes programmes d'un fichier elf pour qu'il puisse être démarré.

mkofboot

Formate la partition bootstrap et installe le chargeur d'amorçage yaboot.

ofboot

Un script pour formater le menu de démarrage avec yaboot.conf et écrit le code Open Firmware correspondant dans le bootstrap.

ofpath

Détermine le chemin de l'Open Firmware vers un nœud de périphérique.

yaboot

Chargeur d'amorçage Open Firmware.

yabootconfig

Génère et installe un fichier yaboot.conf simple.

ybin

Script shell pour mettre à jour ou installer le chargeur d'amorçage sur la partition bootstrap.

yaboot.conf

Fichier de configuration utilisé par ybin pour déterminer comment installer yaboot sur la partition bootstrap.