Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: rizor am 13. February 2009, 19:30

Titel: Eigene stdlibc einbinden
Beitrag 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
Titel: Re: Eigene stdlibc einbinden
Beitrag von: jgraef am 13. February 2009, 20:11
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.
Titel: Re: Eigene stdlibc einbinden
Beitrag von: rizor am 13. February 2009, 20:13
Super. Danke.
Titel: Re: Eigene stdlibc einbinden
Beitrag von: rizor am 13. February 2009, 20:40
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.
Titel: Re: Eigene stdlibc einbinden
Beitrag von: kevin am 13. February 2009, 20:55
Einfach zweimal -I angeben.
Titel: Re: Eigene stdlibc einbinden
Beitrag von: rizor am 13. February 2009, 20:56
Danke.