Précédent   Forum du club des développeurs et IT Pro > Autres langages > Assembleur > Programmation d'OS
Programmation d'OS Programmation de systèmes d'exploitation
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 25/04/2010, 19h14   #1
gta126
Membre du Club
 
Homme
Étudiant
Inscription : janvier 2007
Messages : 122
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2007
Messages : 122
Points : 47
Points : 47
Par défaut Erreur avec les interruptions

Bonjour à tous

Voici mon problème :
Je suis le tutoriel http://a.michelizza.free.fr/pmwiki.php?n=TutoOS.Int2 et j'ai un problème à la compilation (plus précisement au linkage). j'obtient ça comme erreur :

Code :
1
2
3
idt.o:idt.c:(.text+0x77): r├®f├®rence ind├®finie vers ┬½ _asm_default_int ┬╗
idt.o:idt.c:(.text+0xa2): r├®f├®rence ind├®finie vers ┬½ _asm_irq_0 ┬╗
idt.o:idt.c:(.text+0xc6): r├®f├®rence ind├®finie vers ┬½ _asm_irq_1 ┬╗
Je compile sous Windows Vista et voici mon fichier bat servant à compiler :
Code :
1
2
3
4
5
nasm -f win32 -o int.o  int.asm
gcc -ffreestanding -nostdinc -mno-stack-arg-probe -c *.c
 
ld --oformat pe-i386 -Ttext 1000 kernel.o screen.o lib.o gdt.o idt.o int.o interrupt.o pic.o -o linked.tmp
objcopy -R .note -R .comment -S -O binary linked.tmp ..\krnl
J'ai également essayer de retirer les "_" (underscore) dans le fichier "idt.c" mais toujours la même erreur .

Comment je pourrais faire ??

Merci d'avance et bonne journée
gta126 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2010, 10h00   #2
gta126
Membre du Club
 
Homme
Étudiant
Inscription : janvier 2007
Messages : 122
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2007
Messages : 122
Points : 47
Points : 47
Pour finir j'ai trouvé l'erreur : soit il faut utiliser "transformer" une partie du code C/C++ sous Windows, soit compilé avec un Cross-Compiler (par exemple dans cygwin avec les crosstools)
gta126 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 08h38.


 
 
 
 
Partenaires

Hébergement Web