Fehlermeldung beim Kompilieren

OP #2965264
Lesenswert?

Hallo allerseits,

ich habe versucht, einen Treiber für das xilinx webpack zu compilieren. 
Das hatte Folgen:

rfr@linux-6e93:~/Downloads/usb-driver-HEAD-2d19c7c> make
cc -Wall -fPIC -DUSB_DRIVER_VERSION="\"2011-12-12 16:47:45\"" 
usb-driver.c xpcu.c parport.c config.c jtagmon.c -o libusb-driver.so 
-ldl -lusb -lpthread -shared
xpcu.c:6:17: fatal error: usb.h: Datei oder Verzeichnis nicht gefunden
compilation terminated.
parport.c: In function ‘parport_transfer’:
parport.c:21:23: warning: variable ‘last_pp_write’ set but not used 
[-Wunused-but-set-variable]
make: *** [libusb-driver.so] Fehler 1
rfr@linux-6e93:~/Downloads/usb-driver-HEAD-2d19c7c>

Was will mir das sagen, und was tue ich dagegen, das das nicht läuft?

System Suse 12.2
Xilinx webPack 14.2 lin


Gruss

Robert
Persönliche Seite #2965317
Lesenswert?

R. Freitag schrieb:
> Das ist aber klar, denn
> sie soll ja installiert werden.

Von "installieren" ist in Deinem Beitrag keine Rede, Du beschreibst da 
nur einen Versuch, etwas zu kompilieren. Und das geht nicht, weil eben 
jene Datei nicht gefunden wird, was daran liegen kann, daß sie nicht da 
ist oder daß sie nicht dort ist, wo nach ihr gesucht wird.
#2965385
Lesenswert?

Dann such mal nach der Datei usb.h. Z.b. mit
1
find / -name usb.h
(eventuell mit sudo, je nach Linuxvariante).
Dann hast Du einen Anhaltspunkt weiter zu suchen.
Entweder ist die Lib nicht installiert oder wenn sie vorhanden ist sind 
es fehlerhafte Einstellungen entweder im Environment oder im Makefile.
Das der usbprog funktioniert hat nichts damit zu tun ob die Libs die zum 
compilieren notwendig sind da sind oder nicht.

Gruss
Tosa
OP #2965440
Lesenswert?

Ich habe find - name ausgeführt und erhalte:

./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/p54/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/prism2/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/video/go7007 
/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/mouse/synapt 
ics/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/orinoco/usb. 
h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/line6/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/at76c50x/usb 
.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/libertas/usb 
.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/libertas/thi 
nfirm/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/joystick/ifo 
rce/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/ft1000/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/can/ems/usb. 
h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/can/peak/usb 
.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/caif/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/dvb/b2c2/fle 
xcop/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/dvb/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/drm/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/ath6kl/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/wimax/i2400m 
/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/rt2x00/lib/u 
sb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/snd/usb.h
./usr/src/linux-3.4.11-2.16-obj/i386/desktop/include/config/i2c/tiny/usb 
.h
./usr/src/linux-3.4.11-2.16/arch/mips/include/asm/mach-pnx8550/usb.h
./usr/src/linux-3.4.11-2.16/include/linux/usb.h


Gruss

Robert
Gast #2965462
Lesenswert?

> usb.h kommt glaube ich aus dem Linuxkernel und nicht aus libusb.

In Debian und SuSe gibts eine /usr/include/usb.h aus der libusb-dev 
(Debian [0]) bzw. libusb-devel (SuSe [1]). Im Kernel gibts auch 
stapelweise usb.h.

Ändert aber nix daran, dass beim TO offenkundig irgendwas(tm) mit den 
Suchpfaden nicht stimmt. Vielleicht mag selbiger selbige ja mal prüfen 
oder zum prüfen rausrücken.

HTH und nix für ungut.

[0] http://packages.debian.org/wheezy/amd64/libusb-dev/filelist
[1] 
http://fr2.rpmfind.net/linux/rpm2html/search.php?query=%2Fusr%2Finclude%2Fusb.h
OP #2965465
Lesenswert?

So, ich hoffe, der untenstehenden text gibt Auskunft, falls noch was 
fehlt, bitte melden.


rfr@linux-6e93:~> echo $PATH$
/home/rfr/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/ 
usr/games:/opt/kde3/bin:/opt/cross/bin$
rfr@linux-6e93:~>

rfr@linux-6e93:~> su -
Passwort:

linux-6e93:~ # echo $PATH$
/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/ 
usr/bin/X11:/usr/X11R6/bin:/usr/games:/opt/kde3/bin:/opt/cross/bin$
linux-6e93:~ #
OP #2965476
Lesenswert?

g457 schrieb:
> Nachtrag: stelle fest in SuSe 12.2 ist die usb.h augenscheinlich in die
> libusb-compat-devel umgezogen..

Habe ich mal installiert. Und das Makefile ausführen lassen.
Und sieh an:


make
cc -Wall -fPIC -DUSB_DRIVER_VERSION="\"2011-12-12 16:47:45\"" 
usb-driver.c xpcu.c parport.c config.c jtagmon.c -o libusb-driver.so 
-ldl -lusb -lpthread -shared
parport.c: In function ‘parport_transfer’:
parport.c:21:23: warning: variable ‘last_pp_write’ set but not used 
[-Wunused-but-set-variable]
cc -DDEBUG -Wall -fPIC -DUSB_DRIVER_VERSION="\"2011-12-12 16:47:45\"" 
usb-driver.c xpcu.c parport.c config.c jtagmon.c -o 
libusb-driver-DEBUG.so -ldl -lusb -lpthread -shared


nix fehler!!

:-))


Vielen Dank... und frohe Weihnachten

Robert
Gast #2965497
Lesenswert?

> nix fehler!!

Freut mich :-)

> echo $PATH$
            ^
Mit den 'Suchpfaden' waren übrigens die 'Include-Suchpfade' gemeint. Das 
sind im Wesentlichen
- Compilezeit-Defaults der Toolchain [0] (i.d.R. uninteressant falls die 
Toolchain aus der Distribution stammt)
- Umgebungsvariablen [1]
- das was das Makefile zusammenbastelt und als CLI-Parameter mitgibt [0]

Und noch ne kleine Erbsenzählerweltverbessererweisheit: das 
abschließende '$' brauchts in bash/dash/sh/.. nicht, der Variablenname 
endet automagisch vor dem ersten nicht für Variablennamen zulässigen 
Zeichen (im Gegensatz zu Windows/cmd wo Variablen in '%' einzuschließen 
sind).

[0] http://gcc.gnu.org/onlinedocs/cpp/Search-Path.html
[1] http://gcc.gnu.org/onlinedocs/cpp/Environment-Variables.html

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren