epineurien
Messages postés83Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention22 mars 2011
-
27 oct. 2007 à 15:36
cs_Nasman
Messages postés202Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention29 septembre 2008
-
29 oct. 2007 à 08:28
Bonjour !
Voilà ma question :
Je commence à utiliser NASM mais j'ai quelques problemes avec le linker ; Alink.
Avec ce code (issu de la doc. de NASM donc je ne pense pas qu'il soit buggé) :
La compilation du .obj se passe sans problême , mais alink me dit :
Reloc 0:Segment selector relocations are not supported in PE files .
Le problême vient de l'initialisation de DS,SS et SP mais je ne voit pas comment faire autrement (de plus ces lignes de code viennent du manuel de NASM , donc ca devrait marcher normalement) .
Quelqu'un à une solution ?
Note : j'utilise la dernière version de NASM et la dernière version d'Alink .
cs_Nasman
Messages postés202Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention29 septembre 20083 29 oct. 2007 à 08:28
Bonjour epineurien,
Ton message d'erreur signifie que tu as essayé de créer un fichier de format PE (soit 32 bits pour windows) à partir d'un fichier 16 bits (directive USE 16 et initialisation des segments).
Si tu veux un exécutable 16 bits tu dois:
Pour Nasm:
Nasm -fobj monfichier.asm [-o monfichier.obj]
Pour alink:
alink -oEXE monfichier.obj [o monfichier.exe]
Pour les différents modes de compilation avec Nasm et alink, regarde une de mes sources: