Sur des architectures x86 et x86_64 (multilib), on préfère le chargeur de démarrage GRUB. Malheureusement, GRUB ne fonctionne pas sur x86_64 Pure64 - on peut construire correctement les fichiers stage2 en tant que 32 bit, mais le shell grub est un programme 64 bits et il essaie d'exécuter certaines routines de stage2 - ceci aboutit à une erreur de segmentation. Donc, dans le système final, nous utilisons Lilo comme chargeur de démarrage.
Si vous avez déjà un chargeur de démarrage comme GRUB installé sur le système, vous devriez l'utiliser pour rendre votre nouveau noyau amorçable.
Nous allons maintenant compiler de manière croisée Bin86 et Lilo - ces instructions supposent que vous utilisez une machine x86_64 (démarrée par exemple à partir d'un LiveCD), pure 64 ou multilib. Cette approche ne fonctionnera pas si vous exécutez la machine comme i686 car un noyau 32 bits ne sera pas en mesure d'exécuter un binaire 64 bits pour installer le chargeur de démarrage. Si tel est le cas, vous devrez installer un chargeur de démarrage i686 sur le système hôte.