mikrocontroller.net

Forum: Compiler & IDEs Lib linken -> Linker findet nichts


Autor: André Kronfeldt (freakazoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich versuche gerade eine Lib zu linken, nachdem ich festgestellt habe,
daß der AVR-GCC alles zusammenlinkt was ihm unter die Threads kommt.
Außnahme: Einzelne Objects pro Funktion und alle zusammen in eine Lib.
Okay. So weit so gut. Allerdings wird meine Lib test.a angeblich nicht
gefunden (AVR-Studio):

ld.exe -m avr5 -o Log.elf
c:/Programme/WinAVR/bin/../lib/gcc/avr/3.4.5/../../../../avr/lib/avr5/cr 
tm32.o
-LC:\x -LC:/Programme/WinAVR/lib/gcc/avr/3.4.5/avr5
-LC:/Programme/WinAVR/lib/gcc/avr
/3.4.5 -LC:/Programme/WinAVR/lib/gcc
-Lc:/Programme/WinAVR/bin/../lib/gcc/avr/3.4.5/../../../../avr/lib/avr5
-Lc:/Programme/WinAVR/bin/../lib/gcc/avr/3.4.5/../../../../avr/lib
-Map=Log.map Main.o LOG.o LOG_Init.o -lTest -lgcc -lc -lgcc

Wie man sieht, ist -LC:\x gesetzt (dachte ich nehme mal ein kurzes
Verzeichnis außer dem Hauptverzeichnis ohne Leerzeichen) und -lTest
taucht auch auf.

In c:\x liegt natürlich auch eine Test.a. Inhalt (avr-nm -s test.a):

Test.o:
         U __do_clear_bss
         U __do_copy_data
0000003e a _SP_H_
0000003d a _SP_L_
0000003f a _SREG_
00000000 a _tmp_reg_
00000001 a _zero_reg_
00000000 T CTest

Wieso will er das nicht linken?

Grüße,
Freakazoid

Autor: André Kronfeldt (freakazoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Problem gelöst. Libs müssen mit 'lib' beginnen.
Ich hab da echt 2 Stunden dran gesessen und den
Wald vor lauter Bäumen nicht gesehen.

Sorry,
Freakazoid

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Müssen sie nicht.  Du hättest auch test.a direkt in die
Kommandozeile schreiben können.  Wenn du aber mit -lX
linken willst, brauchst du eine libX.a.

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.