Autor Thema: Link Problem  (Gelesen 6481 mal)

copyArt

  • Beiträge: 3
    • Profil anzeigen
Gespeichert
« am: 06. March 2004, 18:23 »
Hi, leutz
ich hab ein Problem.
Ich hab auf http://www.osdever.net/tutorials/basickernel.php?the_id=12 ein tutorial für einen c kernel gefunden.
Sammt printf und clerscreen funktion und Grub tip.

Nun zu meinem Problem ich möchte die ks.o und kernel.o zu einer kernel.bin machen. Dazu nehme ich den Linker wie auf der Seite steht.
Nun kommt immer ein Fehler
"ks.0: file not recongnized: File format not recognized"
was muss ich da machen?

copyArt

  • Beiträge: 3
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 06. March 2004, 19:15 »
und jetzt kommt immer
ld: PE operations on non PE file.

Ich hab den Parameter aout auf coff umgestellt

svler

  • Beiträge: 18
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 15. March 2004, 20:05 »
Hey,

genau das selbe ist bei mir auch !!!

Zuerst kam: kernel32.obj: file not recognized: File Format...
Dann hab ich auch das aout in coff geändert und es kam das mit dem PE.
Vielleicht könnte uns ja jemand helfen oder hast dus(copyArt) vielleicht schon rausgefunden?!

Gruß svler

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #3 am: 15. March 2004, 20:10 »
www.sub--zero.de

Da hab ich ein kleines Tut geschrieben wie man einen C-Kernel startet.
Da ist auch beschrieben wie man das ganze compilen und linken muss.

Bei mir funzt es so wie ich es da beschrieben habe.
----------------------
Redakteur bei LowLevel

svler

  • Beiträge: 18
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 15. March 2004, 20:21 »
Hi TeeJay,

ich hab dieses Tut ja verwendet. Aber wenn ich da mit deiner link.txt Datei das ganze linken will kommt immer einer der beiden Fehler.

Gruß svler

kleiner

  • Beiträge: 131
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 15. March 2004, 22:35 »
TeeJay, Du hättest den 2. Kernel aber auch umgehen können. Steht glaub ich in einer der LowLevel-Ausgaben. Man kann so kompilieren, dass die Strings nicht den Anfang des Programms bilden.

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #6 am: 16. March 2004, 00:53 »
@kleiner ja ich weiß. Aber so muss ich mir deshalb keine Sorgen machen :)
Somal ich in den 2. Kernel auch noch Assembler funktionen packen kann die beim Booten eh ausgeführt werden müssen (A20 gate einschalten).

Aber wie gesagt. Jeder kann die Methode natürlich abändern :)
----------------------
Redakteur bei LowLevel

svler

  • Beiträge: 18
    • Profil anzeigen
Gespeichert
« Antwort #7 am: 16. March 2004, 18:08 »
Hi,

könnte es vielleicht sein, dass ich (wir) eine falsche Version von dem File ld.exe zum Linken haben und deswegen das Format nicht erkannt wird ? Ich hab nähmlich MinGW wenn ich mich nich irre. Hab' ich von so ner CD. Daraus hab ich einfach die Programme zum Compilieren und Linken kopiert.

Gruß svler

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #8 am: 16. March 2004, 19:23 »
Also nur zur Info. Ich habe das DJGPP-Packet verndet um zu Compilen und linken.

Damit funzt es so wie ich es in meinem Tut beschrieben habe.

Wenn ihr dennoch Probleme habt, dann schickt mir einfach mal eure QUELLTEXTDATEIEN per Mail und ich versuche das ganze mal bei mir zu linken.
----------------------
Redakteur bei LowLevel

svler

  • Beiträge: 18
    • Profil anzeigen
Gespeichert
« Antwort #9 am: 16. March 2004, 22:18 »
Hi,

es lag daran, dass ich die gcc.exe und ld.exe nicht von djgpp hatte. Als ich mir jetzt das djgpp runtergeladen hab hat's funktioniert. Läuft jetzt alles prima. @TeeJay: Ich find wirklich klasse, wie viel Mühe du dir mit den ganzen Tuts machst und dann auch noch Zeit findest auf die Fragen hier im Forum zu antworten. Wirklich toll !!! Weiter so !!!

Gruß svler

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #10 am: 17. March 2004, 01:49 »
Kein Problem :)

Aber das wird in einer Woche auch wieder abnehmen, weil dann meine Semesterferien um sind *G*.

Aber ich werde trotzdem ab und zu vorbeischauen :)
----------------------
Redakteur bei LowLevel

 

Einloggen