PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kompilier-Problem der Treiber für Microsoft Fingerprint-Reader für Linux



nocheiniggy
15.04.06, 11:53
Hallo,

kennt von euch schon jemand dieses Projekt?
http://dpfp.berlios.de/wikka.php?wakka=HomePage

Für alle, die es nicht kennen:
Hier gibts einen Treiber für den Microsoft-Fingerprint-Reader.

Meine Frage wäre: Hat von euch schon jemand diese Treiber ausprobiert bzw. erfolgreich installiert?
Ich häng hier ein bisschen beim Kompilieren dieser Librarys: libdpfp-0.1.1

Habe Debian Sarge mit Kernel 2.6.8-3-k7
Wahlweise gcc-3.3 oder gcc-3.4, sowie g++-3.3 bzw. g++-3.4

./configure CC=/usr/bin/gcc-3.4 CXX=/usr/bin/g++-3.4

Habs auch schon mit den Standardeinstellungen versucht (nur ./configure)

läuft, soweit ich das beurteilen kann, einwandfrei durch.

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... /usr/bin/gcc-3.4
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/bin/gcc-3.4 accepts -g... yes
checking for /usr/bin/gcc-3.4 option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of /usr/bin/gcc-3.4... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a sed that does not truncate output... /bin/sed
checking for egrep... grep -E
checking for ld used by /usr/bin/gcc-3.4... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking how to run the C preprocessor... /usr/bin/gcc-3.4 -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... yes
checking whether /usr/bin/g++-3.4 accepts -g... yes
checking dependency style of /usr/bin/g++-3.4... gcc3
checking how to run the C++ preprocessor... /usr/bin/g++-3.4 -E
checking for g77... no
checking for f77... no
checking for xlf... no
checking for frt... no
checking for pgf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for f90... no
checking for xlf90... no
checking for pgf90... no
checking for epcf90... no
checking for f95... no
checking for fort... no
checking for xlf95... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for gfortran... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether accepts -g... no
checking the maximum length of command line arguments... 32768
checking command to parse /usr/bin/nm -B output from /usr/bin/gcc-3.4 object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking for correct ltmain.sh version... yes
checking if /usr/bin/gcc-3.4 supports -fno-rtti -fno-exceptions... no
checking for /usr/bin/gcc-3.4 option to produce PIC... -fPIC
checking if /usr/bin/gcc-3.4 PIC flag -fPIC works... yes
checking if /usr/bin/gcc-3.4 static flag -static works... yes
checking if /usr/bin/gcc-3.4 supports -c -o file.o... yes
checking whether the /usr/bin/gcc-3.4 linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by /usr/bin/g++-3.4... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the /usr/bin/g++-3.4 linker (/usr/bin/ld) supports shared libraries... yes
checking for /usr/bin/g++-3.4 option to produce PIC... -fPIC
checking if /usr/bin/g++-3.4 PIC flag -fPIC works... yes
checking if /usr/bin/g++-3.4 static flag -static works... yes
checking if /usr/bin/g++-3.4 supports -c -o file.o... yes
checking whether the /usr/bin/g++-3.4 linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
appending configuration tag "F77" to libtool
checking for size_t... yes
checking for an ANSI C-conforming const... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking endian.h usability... yes
checking endian.h presence... yes
checking for endian.h... yes
checking for strchr... yes
checking for strtol... yes
checking for strdup... yes
checking for memset... yes
checking for Xv extensions... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libdpfp/Makefile
config.status: creating examples/Makefile
config.status: creating config.h
config.status: executing depfiles commands


Nur bei make heißt es dann

/usr/bin/gcc-3.4 -g -O2 -o .libs/capture_continuous capture_continuous-capture_continuous.o ../libdpfp/.libs/libdpfp.so -lXv -lXext -lX11 -Wl,--rpath -Wl,/usr/local/lib
/usr/bin/ld: cannot find -lXv
collect2: ld returned 1 exit status
make[2]: *** [capture_continuous] Fehler 1
make[2]: Leaving directory `/usr/src/dpfp/libdpfp-0.1.1/examples'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/dpfp/libdpfp-0.1.1'
make: *** [all] Fehler 2


libxv und libxv-dev ist installiert.

Hier die komplette Ausgabe von make, falls die jemand benötigt:


make all-recursive
make[1]: Entering directory `/usr/src/dpfp/libdpfp-0.1.1'
Making all in libdpfp
make[2]: Entering directory `/usr/src/dpfp/libdpfp-0.1.1/libdpfp'
if /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp.lo -MD -MP -MF ".deps/dpfp.Tpo" -c -o dpfp.lo dpfp.c; \
then mv -f ".deps/dpfp.Tpo" ".deps/dpfp.Plo"; else rm -f ".deps/dpfp.Tpo"; exit 1; fi
mkdir .libs
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp.lo -MD -MP -MF .deps/dpfp.Tpo -c dpfp.c -fPIC -DPIC -o .libs/dpfp.o
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp.lo -MD -MP -MF .deps/dpfp.Tpo -c dpfp.c -o dpfp.o >/dev/null 2>&1
if /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_simple.lo -MD -MP -MF ".deps/dpfp_simple.Tpo" -c -o dpfp_simple.lo dpfp_simple.c; \
then mv -f ".deps/dpfp_simple.Tpo" ".deps/dpfp_simple.Plo"; else rm -f ".deps/dpfp_simple.Tpo"; exit 1; fi
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_simple.lo -MD -MP -MF .deps/dpfp_simple.Tpo -c dpfp_simple.c -fPIC -DPIC -o .libs/dpfp_simple.o
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_simple.lo -MD -MP -MF .deps/dpfp_simple.Tpo -c dpfp_simple.c -o dpfp_simple.o >/dev/null 2>&1
if /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_hw.lo -MD -MP -MF ".deps/dpfp_hw.Tpo" -c -o dpfp_hw.lo dpfp_hw.c; \
then mv -f ".deps/dpfp_hw.Tpo" ".deps/dpfp_hw.Plo"; else rm -f ".deps/dpfp_hw.Tpo"; exit 1; fi
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_hw.lo -MD -MP -MF .deps/dpfp_hw.Tpo -c dpfp_hw.c -fPIC -DPIC -o .libs/dpfp_hw.o
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_hw.lo -MD -MP -MF .deps/dpfp_hw.Tpo -c dpfp_hw.c -o dpfp_hw.o >/dev/null 2>&1
if /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_kernel.lo -MD -MP -MF ".deps/dpfp_kernel.Tpo" -c -o dpfp_kernel.lo dpfp_kernel.c; \
then mv -f ".deps/dpfp_kernel.Tpo" ".deps/dpfp_kernel.Plo"; else rm -f ".deps/dpfp_kernel.Tpo"; exit 1; fi
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_kernel.lo -MD -MP -MF .deps/dpfp_kernel.Tpo -c dpfp_kernel.c -fPIC -DPIC -o .libs/dpfp_kernel.o
/usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -MT dpfp_kernel.lo -MD -MP -MF .deps/dpfp_kernel.Tpo -c dpfp_kernel.c -o dpfp_kernel.o >/dev/null 2>&1
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o libdpfp.la -rpath /usr/local/lib -version-info 0:0:0 dpfp.lo dpfp_simple.lo dpfp_hw.lo dpfp_kernel.lo
/usr/bin/gcc-3.4 -shared .libs/dpfp.o .libs/dpfp_simple.o .libs/dpfp_hw.o .libs/dpfp_kernel.o -Wl,-soname -Wl,libdpfp.so.0 -o .libs/libdpfp.so.0.0.0
(cd .libs && rm -f libdpfp.so.0 && ln -s libdpfp.so.0.0.0 libdpfp.so.0)
(cd .libs && rm -f libdpfp.so && ln -s libdpfp.so.0.0.0 libdpfp.so)
ar cru .libs/libdpfp.a dpfp.o dpfp_simple.o dpfp_hw.o dpfp_kernel.o
ranlib .libs/libdpfp.a
creating libdpfp.la
(cd .libs && rm -f libdpfp.la && ln -s ../libdpfp.la libdpfp.la)
make[2]: Leaving directory `/usr/src/dpfp/libdpfp-0.1.1/libdpfp'
Making all in examples
make[2]: Entering directory `/usr/src/dpfp/libdpfp-0.1.1/examples'
if /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -I.. -g -O2 -MT capture_finger_3stage.o -MD -MP -MF ".deps/capture_finger_3stage.Tpo" -c -o capture_finger_3stage.o capture_finger_3stage.c; \
then mv -f ".deps/capture_finger_3stage.Tpo" ".deps/capture_finger_3stage.Po"; else rm -f ".deps/capture_finger_3stage.Tpo"; exit 1; fi
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o capture_finger_3stage capture_finger_3stage.o ../libdpfp/libdpfp.la -ldpfp
mkdir .libs
/usr/bin/gcc-3.4 -g -O2 -o .libs/capture_finger_3stage capture_finger_3stage.o ../libdpfp/.libs/libdpfp.so -Wl,--rpath -Wl,/usr/local/lib
creating capture_finger_3stage
if /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -I.. -g -O2 -MT capture_finger_uru4000.o -MD -MP -MF ".deps/capture_finger_uru4000.Tpo" -c -o capture_finger_uru4000.o capture_finger_uru4000.c; \
then mv -f ".deps/capture_finger_uru4000.Tpo" ".deps/capture_finger_uru4000.Po"; else rm -f ".deps/capture_finger_uru4000.Tpo"; exit 1; fi
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o capture_finger_uru4000 capture_finger_uru4000.o ../libdpfp/libdpfp.la -ldpfp
/usr/bin/gcc-3.4 -g -O2 -o .libs/capture_finger_uru4000 capture_finger_uru4000.o ../libdpfp/.libs/libdpfp.so -Wl,--rpath -Wl,/usr/local/lib
creating capture_finger_uru4000
if /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -I.. -g -O2 -MT capture_finger.o -MD -MP -MF ".deps/capture_finger.Tpo" -c -o capture_finger.o capture_finger.c; \
then mv -f ".deps/capture_finger.Tpo" ".deps/capture_finger.Po"; else rm -f ".deps/capture_finger.Tpo"; exit 1; fi
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o capture_finger capture_finger.o ../libdpfp/libdpfp.la -ldpfp
/usr/bin/gcc-3.4 -g -O2 -o .libs/capture_finger capture_finger.o ../libdpfp/.libs/libdpfp.so -Wl,--rpath -Wl,/usr/local/lib
creating capture_finger
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o challenge_response capture_finger.o ../libdpfp/libdpfp.la -ldpfp
/usr/bin/gcc-3.4 -g -O2 -o .libs/challenge_response capture_finger.o ../libdpfp/.libs/libdpfp.so -Wl,--rpath -Wl,/usr/local/lib
creating challenge_response
if /usr/bin/gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I.. -I.. -g -O2 -MT capture_continuous-capture_continuous.o -MD -MP -MF ".deps/capture_continuous-capture_continuous.Tpo" -c -o capture_continuous-capture_continuous.o `test -f 'capture_continuous.c' || echo './'`capture_continuous.c; \
then mv -f ".deps/capture_continuous-capture_continuous.Tpo" ".deps/capture_continuous-capture_continuous.Po"; else rm -f ".deps/capture_continuous-capture_continuous.Tpo"; exit 1; fi
/bin/sh ../libtool --tag=CC --mode=link /usr/bin/gcc-3.4 -g -O2 -o capture_continuous capture_continuous-capture_continuous.o ../libdpfp/libdpfp.la -ldpfp -lXv -lXext -lX11 ;
/usr/bin/gcc-3.4 -g -O2 -o .libs/capture_continuous capture_continuous-capture_continuous.o ../libdpfp/.libs/libdpfp.so -lXv -lXext -lX11 -Wl,--rpath -Wl,/usr/local/lib
/usr/bin/ld: cannot find -lXv
collect2: ld returned 1 exit status
make[2]: *** [capture_continuous] Fehler 1
make[2]: Leaving directory `/usr/src/dpfp/libdpfp-0.1.1/examples'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/dpfp/libdpfp-0.1.1'
make: *** [all] Fehler 2

drfish
15.04.06, 14:25
/usr/bin/ld: cannot find -lXv

Das Paket das Du brauchst scheint "libxv-dev" zu sein.

jeebee
15.04.06, 15:04
mein System meint, die libXv.so gehört zu Xorg, also mal xorg-devel installieren.

hab allerdings noch X.org 6.8.2 und gentoo, also keine einzelnen Pakete für X. (bei den Xorg 7.0 paketen ist ein libXv dabei)

nocheiniggy
15.04.06, 15:55
libxv-dev ist installiert.
Muss ich bei configure vielleicht irgendeinen Parameter übergeben, damit die lib gefunden wird?

drfish
15.04.06, 16:01
./configure --help verrät Dir mehr Optionen..
Da gibt es evtl. auch die Möglichkeit, die einzelnen Bibliothekspfade anzugeben.

nocheiniggy
15.04.06, 16:33
Hab ich schon ein bisschen durchgeschaut.
Komm da nicht ganz klar damit
Kann mir da mal wer helfen?


`configure' configures libdpfp 0.1.1 to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print `checking...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for `--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or `..']

Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc. You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--sbindir=DIR system admin executables [EPREFIX/sbin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--datadir=DIR read-only architecture-independent data [PREFIX/share]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
--infodir=DIR info documentation [PREFIX/info]
--mandir=DIR man documentation [PREFIX/man]

Program names:
--program-prefix=PREFIX prepend PREFIX to installed program names
--program-suffix=SUFFIX append SUFFIX to installed program names
--program-transform-name=PROGRAM run sed PROGRAM on installed program names

System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]

Optional Features:
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors
--enable-shared[=PKGS]
build shared libraries [default=yes]
--enable-static[=PKGS]
build static libraries [default=yes]
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds)

Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-tags[=TAGS]
include additional configurations [automatic]

Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
headers in a nonstandard directory <include dir>
CPP C preprocessor
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CXXCPP C++ preprocessor
F77 Fortran 77 compiler command
FFLAGS Fortran 77 compiler flags

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.

drfish
16.04.06, 08:29
/usr/bin/ld: cannot find -lXv

Es könnte auch sein, dass er nach libXv.a sucht.
Ist es im System vorhanden?

Andere Frage:
ist der Pfad "/usr/X11R6/lib/" in /etc/ld.so.conf eingetragen?

Wenn nicht, dann eintragen und ldconfig laufen lassen.

nocheiniggy
16.04.06, 14:14
libXv.a ist vorhanden und liegt in /usr/X11R6/lib
Der Pfad war schon in ld.so.conf eingetragen.
Hab zur Sicherheit ldconfig mal ausgeführt.
Aber Problem besteht nach wie vor.

mima
16.04.06, 18:39
hallo,

habs grad getestet. Configure vergißt den Pfad für die X11-Libs ins Makefile einzutragen, warscheinlich da diese Libs nur für eins der Beispiele gebraucht wird. Die eigentliche libdpfp benötigt die X-Lib`s ja nicht.

Mit
LDFLAGS="-L=/usr/X11R6/lib" ./configure; makesollte es funktionieren.

Gruß mima

traffic
17.04.06, 01:09
export LIBRARY_PATH=/usr/X11R6/lib
./configure
make

(LIBRARY_PATH ist kein Tippfehler; LIBRARY_PATH ist nicht dasselbe wie LD_LIBRARY_PATH)

nocheiniggy
18.04.06, 21:06
OK, die letzten beiden Threads haben weitergeholfen.
Danke,

und nun, wie erwartet, steht die zweite Hürde bevor.

Die Treiber lassen sich nicht ordentlich kompilieren.
Zumindest weiß ich nicht genau wies gehen soll.

5 Files im Treiber-Päckchen:
README (lesen hat nicht geholfen)
dpfp.c
dpfp.h
Kbuild mit diesem Text:

obj-m := dpfp.o

und Makefile mit diesem Inhalt:


VER := 0.1.2
DISTFILES := dpfp.c dpfp.h Makefile Kbuild README

module:
make -C /lib/modules/`uname -r`/build M=`pwd`

clean:
rm -rf *.o *.ko *.cmd *.mod.c .*.cmd .tmp_versions

dist:
mkdir dpfp-driver-$(VER)
cp $(DISTFILES) dpfp-driver-$(VER)
tar -cjf dpfp-driver-$(VER).tar.bz2 dpfp-driver-$(VER)
rm -rf dpfp-driver-$(VER)

dist-up: dist
ncftpput ftp.berlios.de incoming dpfp-driver-$(VER).tar.bz2
rm dpfp-driver-$(VER).tar.bz2
firefox https://developer.berlios.de/project/admin/editpackages.php?group_id=5701



Die Eingabe von make gibt erstmal das hier aus:

make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/kernel-source-2.6.8'
Building modules, stage 2.
MODPOST
make[1]: Leaving directory `/usr/src/kernel-source-2.6.8'


Ich hab dann Testhalber folgendes gemacht:

cat Kbuild >> Makefile; make

Und es wurden wirklich einige *.o's und *.ko's etc. sichtbar

Doch dpfp.ko lässt sich nicht laden:


# insmod dpfp.ko
insmod: error inserting 'dpfp.ko': -1 Unknown symbol in module


Eine dpfp.mod.o lässt sich zwar ohne Murren laden, bringt mir aber nicht wirklich Resultate.
dH Der Fingerscanner leuchtet nicht.

Ich verstehs noch immer nicht ganz.
Was will mein PC noch von mir?
Liebe? Die hat er schon :ugly:

mima
19.04.06, 10:10
hallo,

modprobe sollte dein Freund sein.
mima1:/home/mima/src/SYSTEM/dpfp-driver-0.1.2 # modprobe -v dpfp
insmod /lib/modules/2.6.14-archck3/kernel/drivers/base/firmware_class.ko
insmod /lib/modules/2.6.14-archck3/kernel/crypto/dpfp.ko

Mit insmod erhalte ich die gleiche Fehlermeldung.

Gruß mima

BedriddenTech
20.04.06, 20:59
Vielleicht vorher auch nochmal "depmod -ae" ausführen. :) Wenn er da über fehlende Symbole meckert, braucht der Treiber vielleicht etwas anderes, was dein Kernel nicht bereitstellt.

nocheiniggy
20.04.06, 21:29
Also hier mal die Meldung bei modprobe:


/lib/modules/2.6.8-3-k7/kernel/crypto/dpfp.ko
FATAL: Error inserting dpfp (/lib/modules/2.6.8-3-k7/kernel/crypto/dpfp.ko): Unknown symbol in module, or unknown parameter (see dmesg)


Und dmesg sagt:

dpfp: Unknown symbol kzalloc
dpfp: Unknown symbol wait_for_completion_interruptible


Ich werd da nicht wirklich schlau draus

Ach ja, und beim Kompilieren der Module gabs noch ein paar Warnings:


make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/kernel-source-2.6.8'
LD /usr/src/dpfp/dpfp-driver-0.1.2/built-in.o
CC [M] /usr/src/dpfp/dpfp-driver-0.1.2/dpfp.o
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c: In Funktion »dpfp_rsp_new«:
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:162: Warnung: implicit declaration of function `kzalloc'
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:162: Warnung: Initialisierung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c: In Funktion »dpfp_set_mode_async«:
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:210: Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c: In Funktion »do_fp_dl«:
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:567: Warnung: implicit declaration of function `wait_for_completion_interruptible'
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c: In Funktion »dpfp_probe«:
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:809: Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c: Auf höchster Ebene:
/usr/src/dpfp/dpfp-driver-0.1.2/dpfp.c:202: Warnung: `dpfp_set_mode_async' defined but not used
Building modules, stage 2.
MODPOST
Warning: could not find versions for .tmp_versions/dpfp.mod
CC /usr/src/dpfp/dpfp-driver-0.1.2/dpfp.mod.o
LD [M] /usr/src/dpfp/dpfp-driver-0.1.2/dpfp.ko
make[1]: Leaving directory `/usr/src/kernel-source-2.6.8'