• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] linux-wacom erkennt die kernel-source version nicht

st-a

Newbie
Hallo,
ich bin gerade dabei ein Wacom Volito2 einzurichten. (SuSE 10.2, default kernel 2.6.18.8-0.1 incl. headers, source und syms)
Ich habe mich dabei an die Dokumentation vom Linux Wacom Projekt und http://wiki.gimpforum.de/index.php?title=Tutorials:Wacom_Linux_Installation gehalten und benutze linuxwacom-0.7.7-6.
Allerdings will mein System die wacom.o nicht kompilieren. Ich erhalte immer folgenden Fehler:
Code:
checking for arch type... x86_64-suse-linux
checking for kernel type... Linux
checking for linux-based kernel... yes
checking for kernel sources... /lib/modules/2.6.18.8-0.1-default/source
checking for kernel module support... yes
checking for kernel module versioning... ***
*** WARNING:
*** Can not identify your kernel source version
*** Kernel modules will not be built
***
nochecking for valid Xorg SDK... ok
checking for X... libraries /usr/lib64, headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for stack-protector flags support in gcc... yes
checking for X lib directory... found
checking for tclsh... /usr/bin/tclsh
checking for tcl version... 8.4
checking for tcl header files... /usr/include/
checking for tk header files... found
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
***
*** WARNING:
*** Unable to compile wacom.o without kernel build environment
*** wacom.o will not be built
***
Für mich sieht es jetzt so aus, als ob er die modverions.h in /usr/src/linux/include/linux/ nicht findet. Da ist sie auch nicht. Deshalb habe ich sie mal von /usr/src/linux-2.6.18.8-0.1-obj/x86_64/default/include/config/modversions.h dorthin verlinkt, der Fehler blieb aber der gleiche.
Ohne die wacom.o scheint der Treiber auch nicht zu funktionieren wacdump erkennt zwar das Gerät zeigt jedoch keine Interaktion, wenn ich den Stift auf dem Tablet bewege...
Hat jemand eine Idee, wie ich zu der wacom.o komme?


(Hier nochmal der komplette Output von ./configure:)
Code:
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 whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for gawk... (cached) gawk
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... /usr/bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /usr/x86_64-suse-linux/bin/ld
checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes
checking for /usr/x86_64-suse-linux/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... gcc -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 for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -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 gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... cat: /etc/ld.so.conf.d/*.conf: No such file or directory
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 g++... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64
checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... cat: /etc/ld.so.conf.d/*.conf: No such file or directory
GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
appending configuration tag "F77" to libtool
checking for arch type... x86_64-suse-linux
checking for kernel type... Linux
checking for linux-based kernel... yes
checking for kernel sources... /lib/modules/2.6.18.8-0.1-default/source
checking for kernel module support... yes
checking for kernel module versioning... ***
*** WARNING:
*** Can not identify your kernel source version
*** Kernel modules will not be built
***
no
checking for valid Xorg SDK... ok
checking for X... libraries /usr/lib64, headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for stack-protector flags support in gcc... yes
checking for X lib directory... found
checking for tclsh... /usr/bin/tclsh
checking for tcl version... 8.4
checking for tcl header files... /usr/include/
checking for tk header files... found
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
***
*** WARNING:
*** Unable to compile wacom.o without kernel build environment
*** wacom.o will not be built
***
checking for specifying Wacom X driver module path... checking if gcc accepts -fno-merge-constants... yes

configure: creating ./config.status
config.status: creating Makefile
config.status: creating mkxincludes
config.status: creating src/Makefile
config.status: creating src/util/Makefile
config.status: creating src/xdrv/Makefile
config.status: creating src/2.4/Makefile
config.status: creating src/2.4.22/Makefile
config.status: creating src/2.6.8/Makefile
config.status: creating src/2.6.9/Makefile
config.status: creating src/2.6.10/Makefile
config.status: creating src/2.6.11/Makefile
config.status: creating src/2.6.13/Makefile
config.status: creating src/2.6.14/Makefile
config.status: creating src/2.6.15/Makefile
config.status: creating src/2.6.16/Makefile
config.status: creating src/2.6.18/Makefile
config.status: creating src/2.6.19/Makefile
config.status: creating src/wacomxi/Makefile
config.status: creating src/wacomxi/wacomcpl
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands

----------------------------------------
  BUILD ENVIRONMENT:
       architecture - x86_64-suse-linux
       linux kernel - yes
  module versioning - no
      kernel source - no
           Xorg SDK - yes /usr/include/xorg
          XSERVER64 - yes
           dlloader - yes
               XLib - yes /usr/lib64
                TCL - yes /usr/include/
                 TK - yes /usr/include
            ncurses - yes

  BUILD OPTIONS:
            wacom.o - no
            wacdump - yes
             xidump - yes
        libwacomcfg - yes
         libwacomxi - yes
          xsetwacom - yes
              hid.o - no
         usbmouse.o - no
            evdev.o - no
         mousedev.o - no
            input.o - no
        tabletdev.o - no
       wacom_drv.so - yes /usr/lib64/xorg/modules/input
        wacom_drv.o - no
----------------------------------------
 
OP
S

st-a

Newbie
Danke erstmal für die Antwort.

Ich habe folgende Kernel-Pakete in der Version 2.6.18.8-0.1 installiert:
kernel-default - The Standard Kernel for both Uniprocessor and Multiprocessor Systems
kernel-source - The Linux Kernel Sources
kernel-syms - Kernel Symbol Versions (modversions)
linux-kernel-headers - Linux Kernel Headers
auch bin86 und gcc aber 'so' kann ich nicht finden.
Da ich die Kernel-Sources installiert habe wundert es mich, dass er mir immer den Fehler bringt: 'without kernel build environment'.

Ich habe auch per YaST-Schemata die Gruppen 'Grundlegende Entwicklung' und 'Linux-Kernel-Entwicklung' nachinstalliert. Der Fehler bleibt aber der gleiche.
 

wiebkes

Member
Hei st-a.
Das oder so war nicht als "oder das Paket so" gemeint sondern als "oder so" also such bitte jetzt nicht im ganzen I-Net nach dem Paket "so". (Mißverständlich im ersten Posting ausgedrückt ich geb's zu.)
Hast Du "make" und "automake" oder ersatzweise "unsermake" installiert?
Das wären jetzt die letzten Pakete die dir vielleicht noch beim Kernel-bau fehlen könnten (glaube ich zumindest).

Ich habe da gerade noch was gefunden - hab' jetzt nicht so weit gelesen, dass ich sagen könnte ob am Ende das Problem gelöst wird, aber guck Dir doch mal die folgende Seite an:
linuxwacom
der scheint denselben Fehler zu bekommen wie du, oder irre ich mich?

Viel Erfolg

Wiebke
 
OP
S

st-a

Newbie
Ich habe das Problem leider noch nicht lösen können. Das Volito2-Tablet läuft immer noch nicht.
Anscheinend habe ich bei der Fehlerbehebung den falschen Ansatz verfolgt. Mit meiner '/lib/modules/2.6.18.8-0.1-default/source/include/linux/version.h' stimmt wohl etwas nicht oder mit fehlt eine '/lib/modules/2.6.18.8-0.1-default/source/include/linux/utsrelease.h'...
Vielleicht hilft mir das SourceForge-Forum zu dem Projekt ja weiter.

Aber trotzdem vielen Dank für die Hilfe.
 
OP
S

st-a

Newbie
Die Lösung:
Im SourceForge Forum der linuxwacom Entwickler habe ich erfahren, dass das wohl am Configure-Script liegt (hier). Der Treiber ist also nicht openSuSE 10.2 kompatibel. Da ich allerdings nicht auf das nächste Release (0.7.7-8) von linuxwacom warten wollte habe ich ein bisschen improvisiert:
In dem Ordner /lib/modules/2.6.18.8-0.1-default/source/include/linux muss eine Datei mit dem Namen 'utsrelease.h' erstellt werden. Diese Datei bekommt dann folgenden Inhalt:
Code:
#define UTS_RELEASE "2.6.18.8-0.1-default"
(2.6.18.8-0.1-default ist durch die benutzte Kernelversion zu ersetzten)
Jetzt sollte configure die Kernersource Version korrekt erkennen.
 
Oben