Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: rizor am 13. February 2009, 19:30
-
Nabend,
ich habe mir ein paar stdlibc-Methoden geschrieben und wollte diese in meinen Kernel einbinden.
Die kompilierten Files habe ich in einem getrennten Verzeichnis.
Wie bekomme ich den Linker nun dazu, dass er meine verwendet und nicht die von Linux?
Danke für eure Hilfe.
Gruß
rizor
-
1) Die Objektdateien deiner stdlibc zusammenpacken:
$ ar rs libc.a *.o
Mit ar packst du deine Objektdateien zu einer Lib (libc.a) zusammen.
2) Kernel kompilieren
$ gcc <deine ganzen optionen> -L <verzeichnis indem libc.a liegt> -lc
Das -L bewirkt, dass gcc auch in dem angegebenen Verzeichnis nach Libs sucht. Mit -lc wird die Library libc.a eingebunden.
-
Super. Danke.
-
Achso...
Ich habe noch eine andere Frage.
ist es möglich, dass man dem gcc zwei verschiedene Include-Pfade anzugeben?
Ich muss doch einmal einen Pfad zu meiner libc und einen anderen in mein kernel-include packen.
-
Einfach zweimal -I angeben.
-
Danke.