Vous êtes ici : Logram >> Les tutoriels >> Compiler en 64 bits sur une machine 32 bits

Compiler en 64 bits sur une machine 32 bits

Ca marche !
avatar
Auteur : steckdenis
Difficulté : 5/10
Date : le 14/09/2008 à 19:30

Commenter ce tutoriel

Le tutoriel que vous vous apprêtez à lire a été écrit par un bénévole, qui a mis à disposition gratuitement son savoir. Malgré le passage à la validation de ce tutoriel, nous ne pouvons garantir la véricité des informations contenues dedans. Merci de garder ceci à l'esprit pendant votre lecture
Youscef, que je remercie, a trouvé une solution pour compiler Logram sur une machine 32 bits, sous Linux.
Voici la marche à suivre :

Table des matières

  1. Installer la librairie 64 bit de GCC
  2. Compilation de Logram

Installer la librairie 64 bit de GCC

Pour que GCC puisse compiler en 64 bit sur une machine 32 bit, il lui faut une librairie spéciale, qui nous permettra d'utiliser l'option -m64. Voici le code à taper dans une fenêtre terminal :

Code : console
  1. sudo apt-get install lib64gcc1 gcc-multilib

Maintenant que cette librairie est installée, nous allons juste la tester, pour voir si elle marche. Créez donc un fichier test.c ne contenant qu'une fonction main() qui retourne 0. Compilez-le avec la commande suivante :

Code : console
  1. gcc -o test test.c -m64

Maintenant, on va voir s'il est bien en 64 bit, pour cela, il nous suffit d'analyser le format ELF de ce fichier test. Voici la commande :

Code : console
  1. readelf -h test

Si
Code : console
  1. CLASS: ELF64

s'affiche dans la console, c'est que le fichier est bien en 64 bit, vous avez réussi !

Installation des assembleurs



Voilà une bonne chose de faite :) .

Compilation de Logram

Pour compiler Logram, éditez son Makefile "principal" en ajoutant le paramètre -m64 à CFLAGS et -melf_x86_64 à LDFLAGS, puis ouvrez le Makefile qui se trouve dans le dossier boot, et ajoutez -melf_x86_64 à la commande ld (après stage2:).

Ensuite, il vous suffit de le compiler depuis le début :

Code : console
  1. make clean
  2. make
  3. make makedisk
  4. ./makedisk

Voilà, votre Logram est compilé. Détaillons les étapes :

Code : console
  1. make clean

permet d'effacer le contenu précompilé de l'archive, comme ça, vous êtes sûr de tout recompiler vous-mêmes.

Code : console
  1. make

construit Logram

Code : console
  1. make makedisk

compile l'utilitaire makedisk, qui était en version 64 bits dans l'archive. Maintenant, il est en 32 bit.

Code : console
  1. ./makedisk

lance makedisk qui va créer disk.img de Logram
Il ne vous reste plus qu'à tester avec Qemu, il n'y a rien de plus simple : il vous suffit de taper :

Code : console
  1. make qemu

J'espère que j'ai résolu le problème de plusieurs codeurs qui veulent développer pour Logram mais qui n'ont pas un processeur 64 bit.
Ca marche !
avatar

Retour en haut

Auteur : steckdenis
Difficulté : 5/10
Date : le 14/09/2008 à 19:30

Commenter ce tutoriel