Forum: Compiler & IDEs dfu-programmer, build, undefined reference to <libusb-fuktionen>


von Max (Gast)


Lesenswert?

Ich hab mir den neuen (0.5.4) dfu-programmer von sourceforge gesaugt, 
nach einigem Ärger mit fehlendem automake & co hab ich ihn dann so weit, 
dass er compiliert.
ABER: Ich bekomme (trotz installierter libusb1.0.0-0 dev) einen 
"undefined reference to <beliebige usb-funktion> fehlerhaufen.
Der call den (das mitgelieferte) make macht:
"gcc -Wall -g -O2 -I/usr/include/libusb-1.0    -lusb-1.0   -o 
dfu-programmer main.o arguments.o atmel.o commands.o dfu.o intel_hex.o 
util.o
main.o"

Die Fehler bestehen aus ca. 20 Meldungen ala:
"/home/max/opt/dfu-programmer-0.5.4/src/main.c:58: undefined reference 
to `libusb_init'"


Ich hab alles versucht, iwie findet der gcc die (in 
/usr/include/libusb-10 befindliche) libusb.h anscheinend nicht...

Bitte helft mir, ich bin grade am verzweifeln, sonst macht der son Zeug 
nicht.....


Max

PS: ICh arbeite auf Kubuntu 11.10 32-Bit, falls das wichtig sein 
sollte...

von Klaus (Gast)


Lesenswert?

Max schrieb:
> Ich hab alles versucht, iwie findet der gcc die (in
> /usr/include/libusb-10 befindliche) libusb.h anscheinend nicht...

müßte dann die Meldung nicht lauten: libusb.h nicht gefunden ?

MfG Klaus

von Max (Gast)


Lesenswert?

k.a., wie gesagt, das ist das erste mal, dass ich mit so einem Fehler 
bei einem fertigen Proggi konfrontiert werde, deshalb bin ich nicht so 
sicher wo genau das Problem liegt. Ich bin davon ausgegangen, dass 
gleiche Fehlermeldungen gleiche Fehler bedeuten und wenn bei meinen 
AVR-Projekten sowas kam, dann hatte ich ne lib im include-gerutsche 
vergessen...

von Max (Gast)


Lesenswert?

Ich hab mir grade das in /usr/lib/include befindliche libusb.h 
durchgelesen, da sind alle Funktionen als Prototypen (heißt doch so 
oder?) enthalten...

von Klaus (Gast)


Lesenswert?

Ändere doch mal deinen Compileraufruf so, daß statt libusb.h xlibusb.h 
included wird und schau dir die Fehlermeldung mal an. xlibusb.h wirds 
sicher nicht geben.

MfG Klaus

von Max (Gast)


Angehängte Dateien:

Lesenswert?

So hier mal ein "make &> Log.txt"

PS: Sry für den mehrfachpost, aber ohne account kan ich ned editieren 
(ich muss ma mein PAsswort wieder raussuchen)...

von Max D. (max_d)


Lesenswert?

So ich hab mal meinen gmail account zum authentifizieren genutzt, aber 
ich hab keine ahnung welches von den  makefiles ich jeds editieren muss 
um den aufruf des gcc zu ändern (da sin iwie überall welche)...

von Max D. (max_d)


Lesenswert?

Ich hab jetzt einfach mal den call aus dem Terminal kopiert und das 
xlibusb.h gemacht, du hattest recht er meldet dann "xlibusb.h not found" 
(oder so in der art). Ihchab ausserdem noch weng weiter gegoogled und 
gefunden, dass es iwie an dem falschen format der link-library liegt, 
aber irgendwie hat die lösung (-L<Pfad zu lib>) bei mir keinen Effekt 
gezeigt....
Hab ich vlt. irgendwas vergessen, muss ich den gcc4 anders callen als 
den 3er (für den behauptet das makefile nämlich geschrieben zu sein)??

von Max D. (max_d)


Lesenswert?

Wirklich keiner ne Idee?
Ich bin grade ziemlich am verzweifeln...
Ich hab so ziemlich jede Option an das gecalle gehängt und immer diese 
Fehler...
Kann vlt. jemand mal ausprobieren ob das ein allgemeines Problem ist, 
oder mein persöhnlicher Fehler?

von Hannes J. (Firma: _⌨_) (pnuebergang)


Lesenswert?

Das hat nichts mit der .h-Datei zu tun. Der Linker findet die Symbole 
nicht. -l Optionen gehören hinter die .o Dateien. Die Bibliothek sollte 
natürlich installiert sein.

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.