Bonjour,
Voulant faire simple, je voudrais compiler un bout de code asm en 32bit sur un linux 64. Je fais comme ceci:
La c'est ok, mais au link:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $ nasm -f elf32 msgbox.asm -o msgbox.o
J'ai tenté avec gcc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ld msgbox.o -o msgbox ld: architecture i386 du fichier d'entrée « msgbox.o » est incompatible avec la sortie i386:x86-64
Si quelqu'un a une idée ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 gcc -m32 msgbox.o -o msgbox msgbox.o: dans la fonction « _start »: msgbox.asm:(.text+0x0): définitions multiples de « _start » /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib32/crt1.o:(.text+0x0): défini pour la première fois ici /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib32/crt1.o: dans la fonction « _start »: (.text+0x18): référence indéfinie vers « main » collect2: error: ld returned 1 exit status
Merci
Partager