Forum: Compiler & IDEs ARM-Compilerproblem


von Tobi (Gast)


Angehängte Dateien:

Lesenswert?

Hi,

ich bin ARM-Newbie und nachdem ich das Tutorial von Miro Samek 
durchgearbeitet habe, habe ich versucht mittels (extra neu 
"installiertem") WinARM das Beispielprojekt "blinky" zu compilieren.
Tja. Pustekuchen. Zunächst waren das ein paar Probleme im Makefile, das 
hab ich aber niveaumäßig runtergefahren, und das ist jetzt nichtmehr das 
Problem.
Die Sourcen werden alle schön compiliert / assmebliert, aber wenns dann 
ans linken geht, meint der Linker, es gäbe in startup.s in Zeile 160 
"undefined reference to "__data_load"" (das im Linkerscript definiert 
ist) sowie das genau gleiche am gleichen Ort zu "__libc_init_array".
Irgendwas passt da also nicht - scheints.

Und dann meldet er sich ab mit:
arm-elf-ld: BFD 060606 20060606 internal error, aborting at 
[...]bfd/elflink.c at line 6509 in elf_link_output_system

arm-elf-ld: Please report this bug.

An was kann sowas liegen?
Ich weis leider nimmer weiter, kann mir jemand helfen?
Das gesamte Projekt ist an diesen Beitrag angehängt.

Thanks a lot,
Tobi

von Rolf Magnus (Gast)


Lesenswert?

Warum rufst du eigentlich ld direkt auf statt über gcc?

von Tobi (Gast)


Lesenswert?

Hi

ich kenn' das aus den anderen Beispielprojekten nicht anders.
Das Makefile hab ich prinzipiell schon so gelassen wie es war... Miro 
Samek wollte wohl die Standardlibraries nicht dabei haben.
(Ich habe die schonmal dazu gelinkt, mit dem Ergebnis, dass es noch mehr 
Fehler gab...)
Man könnte mal ausprobieren, ob es das das Problem behebt, wenn der gcc 
den Linker aufruft. Welche Parameter muss ich dann hinzufügen?

Hier übrigens der Link zu dem Tutorial:
http://www.quantum-leaps.com/resources/papers.htm##GNU-ARM

Das Problem liegt sicherlich irgendwo ~30cm vor dem Bildschirm ... die 
Frage ist wo genau.

Ich hätte folgende Ideen:
- Könnte es sein, dass ich den Linker falsch aufrufe?
- Werden die Sourcen falsch (Ausgabeformat o.ä.) compiliert / 
assembliert?
- Im Linkerscript werden Standardkonstruktoren für C++ vorgesehen... 
Problematisch? (Section .text)
- Gibt es doch (gravierende) Unterschiede GnuARM - WinARM??

Thanks und viele Grüße,
Tobi

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
Noch kein Account? Hier anmelden.