Autor Thema: Problem beim Linken des Kernels  (Gelesen 3072 mal)

Jip

  • Beiträge: 2
    • Profil anzeigen
Gespeichert
« am: 11. March 2015, 22:39 »
Hallo,

ich habe ein kleines Problem beim Linken des Kernels: Welche ich nach der Anleitung http://www.lowlevel.eu/wiki/C-Kernel_mit_GRUB versucht habe zu Linken. Allerdings habe ich den Kernel nicht in C sonder in C++ programmiert! Nun wird die Lib iostream nicht gelinkt! Wenn ich den Befehl:
$ ld -T <LD-Konfigurationsdatei> -o kernel.bin kernel_asm.o kernel_cpp.oausführe, kommen die Fehlermeldungen
undefined reference to ’std::cout’usw... Wie gebe ich dem Linker nun den Pfad von iostream muss ich den ins Linkerscript schreiben oder als Parameter setzen?

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 11. March 2015, 23:01 »
Genau wie der C-Kernel kein printf() benutzen kann, weil er es nicht selbst implementiert hat, kannst du auch kein std::cout benutzen, ohne es selbst implementiert zu haben. Die Standardbibliothek von Linux hilft dir dabei nicht weiter.

Du wirst also auch für C++ erst einmal mit der while-Schleife aus dem Tutorial vorlieb nehmen müssen.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

Jip

  • Beiträge: 2
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 12. March 2015, 18:33 »
ok, danke :-)

 

Einloggen