Servus, Beim Aufbau einer Toolchain mit openLPC, bin ich auf folgende Problemantik gestoßen: Wenn ich im Makefile einstelle, daß er mir nur ein .hex File generieren soll, sprich: Bare Metal, bricht er stets den Linkvorgang mit der typischen "undefined referende to" Fehlermeldung ab. Woran könnte das liegen? Ich nutze im Übrigen kein openGL Board, sondern eine Eigenentwicklung, daher brauche ich auch nur ein .hex File.
NFox schrieb: > "undefined referende to" Wow den eigentlich wichtigen teil der Fehlermeldung unterschlägst du. Poste bitte mal den Rest auch noch. Wenn der Linker eine solche Fehlermeldung wirft, dann fehlt ihm ein Symbol zum binden. Könnte eine Funktion eine Variable oder ähnliches sein. Gruß Oliver
Huch, entschuldigung. Die Bildschirmfotos habe ich tatsächlich vergessen, liegen jetzt aber im Anhang. Übrigens eine grandiose Leistung des Makefiles ist es die Option auf "bare" umzuschalten einmal im makefile und einmal ganz unten in der Datei zu liefern, in der man persönliche Sondereinstellungen machen kann. Und ich habe mich gewundert, warum die if-Abfrage nicht hingehauen hat ...
Also ich hab gerade mal rumexperimentiert und die librarys durchsucht. Fologendes trat zutage: Das Problem liegt daran, daß der Library die zum Übersetzen von bare metal Anwendungen genutzt wird, zwei Objekte fehlen. Das Erste sind die Systemcalls, das Zweite ist ein Objekt das in der LPC Library nur als "stub.o" bekannt ist. Füge ich Beide dem Linkvorgang hinzu, erhalte ich eine funktionsfähige .HEX. Nun ist die Frage: Ich weiß, daß ich eine eigene Syscalls.c definieren muß, kein Thema, geht, aber was ist die "stub.o" und wie sicher wäre es, wenn ich diese Lösung, also das ich die Syscalls auf der andren Library hole, weiterhin nutze?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.