mikrocontroller.net

Forum: Compiler & IDEs Linker-Skript: non constant or forward reference address ...


Autor: Luis Galdos (felipe)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
Es geht um den GNU-Linker ld und ein Linker-Skript für diesen.
Nun, ich habe mehrere Objektdateien, die ich zusammenbinden moechte. Zu
diesem Zweck habe ich mir ein Linker-Skript zusammengebastelt (siehe
Dateianhang).
Durch dieses Skript soll die Objektdatei loader.o hinter den restlichen
Objektdateien gespeichert werden, und gleichzeitig soll der Code von
loader.o gegen die Adresse "__sloader" gelinkt werden. Beim Linken
bekomme ich aber leider die folgende Fehlermeldung:

./image.lds:32: non constant or forward reference address expression
for section .loader

Die Fehlermeldung tritt durch "__sloader" auf, denn wenn ich an
seiner Stelle "__offset" einfüge, dann wird fehlerfrei gelinkt.
Weiß vielleicht jemand, wie ich diesen Fehler lösen kann, oder ob ich
eine andere Methode anwenden kann, damit der Code von loader.o gegen
die Adresse "__offset + __einit" gelinkt werden kann?

Danke im Voraus


Luis


PS: beim Linken verwende ich den folgenden Befehl:
    arm-linux-ld -T ./image.lds init.o loader.o preinit.o postinit.o \

        -o image -Map image.map

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.