Donnerstag, 24. Mai 2012, 08:02

Du bist nicht angemeldet.



McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

1

Donnerstag, 28. Februar 2008, 20:19

Wie kann ich einen (Linux)-Eumex-Treiber für eine Eumex 604 PC HOMENET Telefonanlage kompilieren und installieren????

Hallo zusammen,

schon vor einiger Zeit entdeckte ich auf http://eumex.sourceforge.net/ einen Linux-Treiber für mehrere Eumex-Telefonanlagen. Also habe ich mir die "aktuellste" Version eumex-0.1.2.tar.gz von http://sourceforge.net/project/showfiles.php?group_id=66803 heruntergeladen. Dann wird das Archiv nach Anweisung zunächst entpackt und ein ./configure durchgeführt:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
ich@pc:~/Desktop$ cd eumex-0.1.2
ich@pc:~/Desktop/eumex-0.1.2$ ./configure
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... 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 whether make sets $(MAKE)... (cached) yes
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 gcc... /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... 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 static flag  works... yes
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 supports -c -o file.o... yes
checking whether the gcc 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 g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ 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
checking whether stripping libraries is possible... yes
appending configuration tag "F77" to libtool
checking for usb_init in -lusb... no
checking for ANSI C header files... (cached) yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/timeb.h usability... yes
checking sys/timeb.h presence... yes
checking for sys/timeb.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether gcc needs -traditional... no
checking whether lstat dereferences a symlink specified with a trailing slash... yes
checking whether lstat accepts an empty string... no
checking whether lstat dereferences a symlink specified with a trailing slash... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking for function prototypes... yes
checking whether setvbuf arguments are reversed... no
checking return type of signal handlers... void
checking for atexit... yes
checking for ftime... yes
checking for memchr... yes
checking for memset... yes
checking for select... yes
checking for strstr... yes
configure: Using kernel source at /lib/modules/2.6.22-14-generic/build
configure: creating ./config.status
config.status: creating Makefile
config.status: creating kernel/Makefile
config.status: creating kernel/flash/Makefile
config.status: creating kernel/konfig/Makefile
config.status: creating kernel/router/Makefile
config.status: creating kernel/usb/Makefile
config.status: creating userspace/Makefile
config.status: creating userspace/dispatcher/Makefile
config.status: creating userspace/dispatcher/usb/Makefile
config.status: creating userspace/dispatcher/seriell/Makefile
config.status: creating kernel/usb/kernel2.6/Makefile
config.status: creating config.h
config.status: executing depfiles commands

ich@pc:~/Desktop/eumex-0.1.2$


Ich bin zwar ziemlicher Anfänger auf diesem Gebiet, aber bis hierher scheint doch alles durchzulaufen; zumindest wird der Vorgang nicht durch einen groben Fehler abgebrochen, oder?

Ich habe da einfach mal angenommen, dass alles normal verlaufen ist und dann (sicherhaltshalber vorher sudo su durchgeführt) ein "make" hinterhergeschickt:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
ich@pc:~/Desktop/eumex-0.1.2$ sudo su
[sudo] password for ich:
root@pc:/home/ich/Desktop/eumex-0.1.2# make
make  all-recursive
make[1]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2'
Making all in kernel
make[2]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel'
Making all in konfig
make[3]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/konfig'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT aws.o -MD -MP -MF ".deps/aws.Tpo" -c -o aws.o aws.c; \
    	then mv -f ".deps/aws.Tpo" ".deps/aws.Po"; else rm -f ".deps/aws.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT globales.o -MD -MP -MF ".deps/globales.Tpo" -c -o globales.o globales.c; \
    	then mv -f ".deps/globales.Tpo" ".deps/globales.Po"; else rm -f ".deps/globales.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT konfig.o -MD -MP -MF ".deps/konfig.Tpo" -c -o konfig.o konfig.c; \
    	then mv -f ".deps/konfig.Tpo" ".deps/konfig.Po"; else rm -f ".deps/konfig.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o main.c; \
    	then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT makros.o -MD -MP -MF ".deps/makros.Tpo" -c -o makros.o makros.c; \
    	then mv -f ".deps/makros.Tpo" ".deps/makros.Po"; else rm -f ".deps/makros.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT msn.o -MD -MP -MF ".deps/msn.Tpo" -c -o msn.o msn.c; \
    	then mv -f ".deps/msn.Tpo" ".deps/msn.Po"; else rm -f ".deps/msn.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT port.o -MD -MP -MF ".deps/port.Tpo" -c -o port.o port.c; \
    	then mv -f ".deps/port.Tpo" ".deps/port.Po"; else rm -f ".deps/port.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT rewr.o -MD -MP -MF ".deps/rewr.Tpo" -c -o rewr.o rewr.c; \
    	then mv -f ".deps/rewr.Tpo" ".deps/rewr.Po"; else rm -f ".deps/rewr.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT router.o -MD -MP -MF ".deps/router.Tpo" -c -o router.o router.c; \
    	then mv -f ".deps/router.Tpo" ".deps/router.Po"; else rm -f ".deps/router.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT utils.o -MD -MP -MF ".deps/utils.Tpo" -c -o utils.o utils.c; \
    	then mv -f ".deps/utils.Tpo" ".deps/utils.Po"; else rm -f ".deps/utils.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT info.o -MD -MP -MF ".deps/info.Tpo" -c -o info.o info.c; \
    	then mv -f ".deps/info.Tpo" ".deps/info.Po"; else rm -f ".deps/info.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT display.o -MD -MP -MF ".deps/display.Tpo" -c -o display.o display.c; \
    	then mv -f ".deps/display.Tpo" ".deps/display.Po"; else rm -f ".deps/display.Tpo"; exit 1; fi
/bin/bash ../../libtool --tag=CC --mode=link gcc  -g -O2   -o emxconf  aws.o globales.o konfig.o main.o makros.o msn.o port.o rewr.o router.o utils.o info.o display.o  
mkdir .libs
gcc -g -O2 -o emxconf aws.o globales.o konfig.o main.o makros.o msn.o port.o rewr.o router.o utils.o info.o display.o 
make[3]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/konfig'
Making all in router
make[3]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/router'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT emxrouter.o -MD -MP -MF ".deps/emxrouter.Tpo" -c -o emxrouter.o emxrouter.c; \
    	then mv -f ".deps/emxrouter.Tpo" ".deps/emxrouter.Po"; else rm -f ".deps/emxrouter.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT uscmdsplit.o -MD -MP -MF ".deps/uscmdsplit.Tpo" -c -o uscmdsplit.o uscmdsplit.c; \
    	then mv -f ".deps/uscmdsplit.Tpo" ".deps/uscmdsplit.Po"; else rm -f ".deps/uscmdsplit.Tpo"; exit 1; fi
/bin/bash ../../libtool --tag=CC --mode=link gcc  -g -O2   -o emxrouter  emxrouter.o uscmdsplit.o  
mkdir .libs
gcc -g -O2 -o emxrouter emxrouter.o uscmdsplit.o 
make[3]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/router'
Making all in flash
make[3]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/flash'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT emxflash.o -MD -MP -MF ".deps/emxflash.Tpo" -c -o emxflash.o emxflash.c; \
    	then mv -f ".deps/emxflash.Tpo" ".deps/emxflash.Po"; else rm -f ".deps/emxflash.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT xmodem.o -MD -MP -MF ".deps/xmodem.Tpo" -c -o xmodem.o xmodem.c; \
    	then mv -f ".deps/xmodem.Tpo" ".deps/xmodem.Po"; else rm -f ".deps/xmodem.Tpo"; exit 1; fi
/bin/bash ../../libtool --tag=CC --mode=link gcc  -g -O2   -o emxflash  emxflash.o xmodem.o  
mkdir .libs
gcc -g -O2 -o emxflash emxflash.o xmodem.o 
make[3]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/flash'
Making all in usb
make[3]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/usb'
Making all in kernel2.6
make[4]: Betrete Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6'
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex modules
make[5]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.o
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:25:26: Fehler: linux/config.h: No such file or directory
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:38:35: Fehler: linux/devfs_fs_kernel.h: No such file or directory
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:69: Fehler: Größe des Feldes »type name« ist negativ
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:154: Fehler: unbekanntes Feld »owner« in Initialisierung angegeben
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:154: Warnung: Initialisierung von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c: In Funktion »emx_read_b1_bulk_callback«:
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:457: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c: In Funktion »emx_read_b2_bulk_callback«:
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:558: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c: In Funktion »emx_read_cmd_bulk_callback«:
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:700: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c: In Funktion »emx_probe«:
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1139: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1147: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1157: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1165: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1175: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1183: Warnung: Übergabe des Arguments 6 von »usb_fill_bulk_urb« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c: In Funktion »usb_emx_init«:
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1368: Warnung: Übergabe des Arguments 2 von »class_device_create« erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1368: Warnung: Übergabe des Arguments 3 von »class_device_create«  erzeugt Ganzzahl von Zeiger ohne Typkonvertierung
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1368: Warnung: Übergabe des Arguments 4 von »class_device_create« von inkompatiblem Zeigertyp
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1368: Fehler: Zu wenige Argumente für Funktion »class_device_create«
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1383: Warnung: Implizite Deklaration der Funktion »devfs_mk_cdev«
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:1401: Warnung: Implizite Deklaration der Funktion »devfs_remove«
make[6]: *** [/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.o] Fehler 1
make[5]: *** [_module_/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex] Fehler 2
make[5]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
make[4]: *** [all] Fehler 2
make[4]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6'
make[3]: *** [all-recursive] Fehler 1
make[3]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel/usb'
make[2]: *** [all-recursive] Fehler 1
make[2]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2/kernel'
make[1]: *** [all-recursive] Fehler 1
make[1]: Verlasse Verzeichnis '/home/ich/Desktop/eumex-0.1.2'
make: *** [all] Fehler 2
root@rgc:/home/ich/Desktop/eumex-0.1.2#


Tja, und das sieht selbst für mich als Laien alles recht "schiefgegangen" aus.
Auf der Suche nach mehr Infos stieß ich dann auf eine Mailingliste, wo man den Rat gab, doch die Version aus dem CVS zu nehmen, da diese aktueller sei und anschließend sollte man einen Patch ausführen. Wenn ich mich recht erinneren, funktionierte die Kompilierung auch dort erst nach dem erwähnten Patch. Da ich mich damit (auch) nicht wirklich auskenne, habe ich jede einzelne Datei des Projektes in jedem Verzeichnis auf meinen Rechner kopiert und das ganze damit nochmal von vorne begonnen, mit dem Ergebnis, das auch hier "make" schiefging, allerdings mit anderen Meldungen (habe sie leider nicht mehr).

Wer kennt sich mit sowas aus?
Gibt es empfehlungswerte Dokus, die verständlich sind?

Vielen Dank an alle

MFG

McLane
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »McLane« (12. März 2008, 11:23)


basslord

Ubuntufreund

Beiträge: 2 671

Ubuntu: 12.04

Kernel: 3.2.0-24-generic

Desktop: KDE

Architektur: 64-bit

Danksagungen: 1 / 1

  • Private Nachricht senden

2

Freitag, 29. Februar 2008, 08:56

Hi,

Quellcode

1
2
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:25:26: Fehler: linux/config.h: No such file or directory
/home/ich/Desktop/eumex-0.1.2/kernel/usb/kernel2.6/eumex/emx_usb.c:38:35: Fehler: linux/devfs_fs_kernel.h: No such file or directory

Die config.h gibt es seit einigen Kernelversionen nicht mehr. Versuch mal, einen Link dieses Namens auf die autoconf.h zu erstellen. Bei der anderen Headerdatei... hui. Gute Frage, müsste ich auch suchen. Etwas alter Sourcecode, schwierig.

Gruß
Rodge
"Ohne Musik wäre das Leben ein Irrtum." - Friedrich Nietzsche

McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

3

Dienstag, 4. März 2008, 09:14

Hi,

sorry wegen der späten Antwort. Leider haben wir hier alle flach gelegen mit einem grippalen Infekt. Schön der Reihe nach, wie sich das gehört X( . Werde mal versuchen, das mit dem Link hinzukriegen und mich dann wieder melden. Danke schonmal.

Gruß

McLane
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.

McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

4

Dienstag, 4. März 2008, 12:17

Eumex-Treiber Teil 1

Hi,

so, nun habe ich mal ein wenig rumgewühlt und bin ein bißchen weitergekommen, glaube ich. Vielleicht kann ich hieraus ja mal ein Howto basteln, wenn es mal funktionieren sollte. Also, los!
Bei Interesse: Homepage des Projektes: http://eumex.sourceforge.net/

Zunächst einmal wird ein Verzeichnis eigener Wahl erstellt, dorthin gewechselt und sodann die aktuellste CVS-Version runtergeladen:

Quellcode

1
2
3
	cvs -d:pserver:anonymous@eumex.cvs.sourceforge.net:/cvsroot/eumex login

	cvs -z3 -d:pserver:anonymous@eumex.cvs.sourceforge.net:/cvsroot/eumex co Eumex


Die Abfrage des Passwortes beim Login wird mit "Return" beantwortet. Nach einiger Zeit des Wartens sollten sich die Dateien im entsprechenden Verzeichnis befinden. Hier noch die Ausgabe im Terminal:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
raguecoe@rgc:~$ mkdir CVS-Software
raguecoe@rgc:~$ cd CVS-Software
raguecoe@rgc:~/CVS-Software$  cvs -d:pserver:anonymous@eumex.cvs.sourceforge.net:/cvsroot/eumex login
Logging in to :pserver:anonymous@eumex.cvs.sourceforge.net:2401:/cvsroot/eumex
CVS Password: 
raguecoe@rgc:~/CVS-Software$  cvs -z3 -d:pserver:anonymous@eumex.cvs.sourceforge.net:/cvsroot/eumex co Eumex
cvs checkout: Updating Eumex
U Eumex/CHANGES
U Eumex/COPYING
U Eumex/LIESMICH
U Eumex/Makefile.am
U Eumex/README
U Eumex/TODO
U Eumex/autogen.sh
U Eumex/configure.ac
cvs checkout: Updating Eumex/commander
cvs checkout: Updating Eumex/dispatcher
cvs checkout: Updating Eumex/kernel
U Eumex/kernel/Makefile.am
cvs checkout: Updating Eumex/kernel/flash
U Eumex/kernel/flash/Makefile.am
U Eumex/kernel/flash/emxflash.c
U Eumex/kernel/flash/xmodem.c
U Eumex/kernel/flash/xmodem.h
cvs checkout: Updating Eumex/kernel/konfig
U Eumex/kernel/konfig/Makefile.am
U Eumex/kernel/konfig/aws.c
U Eumex/kernel/konfig/aws.h
U Eumex/kernel/konfig/consts.h
U Eumex/kernel/konfig/display.c
U Eumex/kernel/konfig/display.h
U Eumex/kernel/konfig/globales.c
U Eumex/kernel/konfig/globales.h
U Eumex/kernel/konfig/info.c
U Eumex/kernel/konfig/info.h
U Eumex/kernel/konfig/konfig.c
U Eumex/kernel/konfig/konfig.h
U Eumex/kernel/konfig/main.c
U Eumex/kernel/konfig/makros.c
U Eumex/kernel/konfig/makros.h
U Eumex/kernel/konfig/msn.c
U Eumex/kernel/konfig/msn.h
U Eumex/kernel/konfig/port.c
U Eumex/kernel/konfig/port.h
U Eumex/kernel/konfig/rewr.c
U Eumex/kernel/konfig/rewr.h
U Eumex/kernel/konfig/router.c
U Eumex/kernel/konfig/router.h
U Eumex/kernel/konfig/utils.c
U Eumex/kernel/konfig/utils.h
cvs checkout: Updating Eumex/kernel/lib
U Eumex/kernel/lib/libeumex.c
U Eumex/kernel/lib/uscmdsplit.c
U Eumex/kernel/lib/uscmdsplit.h
cvs checkout: Updating Eumex/kernel/router
U Eumex/kernel/router/Makefile.am
U Eumex/kernel/router/emxrouter.c
U Eumex/kernel/router/uscmdsplit.c
U Eumex/kernel/router/uscmdsplit.h
cvs checkout: Updating Eumex/kernel/usb
U Eumex/kernel/usb/Makefile.am
cvs checkout: Updating Eumex/kernel/usb/kernel2.4
cvs checkout: Updating Eumex/kernel/usb/kernel2.6
U Eumex/kernel/usb/kernel2.6/Makefile.am
cvs checkout: Updating Eumex/kernel/usb/kernel2.6/emx_i4l_bridge
cvs checkout: Updating Eumex/kernel/usb/kernel2.6/emx_net
cvs checkout: Updating Eumex/kernel/usb/kernel2.6/eumex
U Eumex/kernel/usb/kernel2.6/eumex/Makefile
U Eumex/kernel/usb/kernel2.6/eumex/emx_defs.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_driver.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_driver.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_interface.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_interface.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_504.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_504.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_604.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_604.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_raw.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_io_raw.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_ioctl.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_net.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_net.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_prot.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_prot.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_usb.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_usb.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_user.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_user.h
U Eumex/kernel/usb/kernel2.6/eumex/emx_user_list.c
U Eumex/kernel/usb/kernel2.6/eumex/emx_user_list.h
U Eumex/kernel/usb/kernel2.6/eumex/ifcfg-ethemx
U Eumex/kernel/usb/kernel2.6/eumex/install.sh
U Eumex/kernel/usb/kernel2.6/eumex/liesmich 2.6.txt
U Eumex/kernel/usb/kernel2.6/eumex/make.sh
cvs checkout: Updating Eumex/kernel/usb/kernel2.6/eumex_i4l
U Eumex/kernel/usb/kernel2.6/eumex_i4l/Makefile
U Eumex/kernel/usb/kernel2.6/eumex_i4l/anleitung.txt
U Eumex/kernel/usb/kernel2.6/eumex_i4l/bcs.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/bcs.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/cfg-contr_suse
U Eumex/kernel/usb/kernel2.6/eumex_i4l/emx.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/emx.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/emx_to_i4l.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/emx_to_i4l.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/globals.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/i4l_to_emx.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/i4l_to_emx.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/install.sh
U Eumex/kernel/usb/kernel2.6/eumex_i4l/isdnhdlc.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/isdnhdlc.h
U Eumex/kernel/usb/kernel2.6/eumex_i4l/make.sh
U Eumex/kernel/usb/kernel2.6/eumex_i4l/utils.c
U Eumex/kernel/usb/kernel2.6/eumex_i4l/utils.h
cvs checkout: Updating Eumex/konfig
cvs checkout: Updating Eumex/userspace
U Eumex/userspace/Makefile.am
U Eumex/userspace/anleitung.txt
cvs checkout: Updating Eumex/userspace/dispatcher
U Eumex/userspace/dispatcher/Makefile.am
cvs checkout: Updating Eumex/userspace/dispatcher/seriell
U Eumex/userspace/dispatcher/seriell/Makefile.am
U Eumex/userspace/dispatcher/seriell/consts.h
U Eumex/userspace/dispatcher/seriell/dispatcher.c
U Eumex/userspace/dispatcher/seriell/dispatcher.h
U Eumex/userspace/dispatcher/seriell/escape_ser.c
U Eumex/userspace/dispatcher/seriell/escape_ser.h
U Eumex/userspace/dispatcher/seriell/global.h
U Eumex/userspace/dispatcher/seriell/idle.c
U Eumex/userspace/dispatcher/seriell/idle.h
U Eumex/userspace/dispatcher/seriell/io_serial.c
U Eumex/userspace/dispatcher/seriell/io_serial.h
U Eumex/userspace/dispatcher/seriell/main.c
U Eumex/userspace/dispatcher/seriell/utils.c
U Eumex/userspace/dispatcher/seriell/utils.h
cvs checkout: Updating Eumex/userspace/dispatcher/usb
U Eumex/userspace/dispatcher/usb/Makefile.am
U Eumex/userspace/dispatcher/usb/consts.h
U Eumex/userspace/dispatcher/usb/dispatcher.c
U Eumex/userspace/dispatcher/usb/dispatcher.h
U Eumex/userspace/dispatcher/usb/escape_ser.c
U Eumex/userspace/dispatcher/usb/escape_ser.h
U Eumex/userspace/dispatcher/usb/global.h
U Eumex/userspace/dispatcher/usb/idle.c
U Eumex/userspace/dispatcher/usb/idle.h
U Eumex/userspace/dispatcher/usb/io_504.c
U Eumex/userspace/dispatcher/usb/io_504.h
U Eumex/userspace/dispatcher/usb/io_604.c
U Eumex/userspace/dispatcher/usb/io_604.h
U Eumex/userspace/dispatcher/usb/main.c
U Eumex/userspace/dispatcher/usb/usbtrans.c
U Eumex/userspace/dispatcher/usb/usbtrans.h
U Eumex/userspace/dispatcher/usb/utils.c
U Eumex/userspace/dispatcher/usb/utils.h
cvs checkout: Updating Eumex/userspace/konfig
raguecoe@rgc:~/CVS-Software$


Nachdem sich nun alle Dateien auf der Platte befinden, müssen die "autotools" (automake ab Version 1.6, autoconf, libtools) über "apt" bzw. "synaptic" installiert werden, fall nicht vorhanden.

Jetzt in das zuvor angelegte Unterverzeichnis "Eumex" wechseln und dann ein "autogen.sh" durchführen (Bei bestehendem Interesse: die liesmich 2.6.txt steht im Verzeichniss ~/Eumex/kernel/usb/kernel2.6/eumex)

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
raguecoe@rgc:~/CVS-Software$ cd Eumex
raguecoe@rgc:~/CVS-Software/Eumex$ ./autogen.sh
Teste auf vorhandenen gcc...
gcc OK

Teste auf vorhandenes make...
make OK

Teste auf vorhandene autotools...
autotools OK

Teste auf korrekt installierten 2.6er-Kernelcode...
Kernelsource OK

------ eventuelle hier nachfolgende Warnungen k�nnen ignoriert werden ------
You should add the contents of `/usr/share/aclocal/libtool.m4' to `aclocal.m4'.
--------- ab hier sollten eigentlich keine Warnungen mehr auftreten ---------
configure.ac: installing `./install-sh'
configure.ac: installing `./missing'
kernel/flash/Makefile.am: installing `./depcomp'
raguecoe@rgc:~/CVS-Software/Eumex$


Hat das bis hierher seine Richtigkeit?
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »McLane« (4. März 2008, 13:30)


McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

5

Dienstag, 4. März 2008, 12:18

Eumex-Treiber Teil 2

So; ab hier wird es für mich schwierig, da ich nicht so 100%ig weiß,
was ich da überhaupt mache. Doch nun weiter:

Laut Angabe soll es wie folgt weitergehen:
Ein
User, der die Installation offensichtlich geschafft hat, hat folgende
Dateien geändert, da er zwei Kompilierungsfehler hatte:
  1. emx_user.c im Verzeichnis kernel/usb/kernel2.6/eumex/ und
  2. emx_driver.c im selben Verzeichnis
In der emx_user.c hat er folgenden Header (#include <linux/poll.h>;) eingefügt, da er nicht eingebunden war (hier ein Auszug aus der Datei mit eingefügtem Header):

Quellcode

1
2
3
4
5
6
7
8
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/usb.h>
#include <linux/fs.h>
#include <linux/cdev.h>
#include <linux/device.h>
#include <linux/ioctl.h>
#include <linux/poll.h>


In
der Datei "emx_driver.c" hat er die Zeile "module_param(debug,uint,
644)" sowie die nachfolgende Zeile (bezüglich debugging, welches er
nicht brauchte) auskommentiert; siehe Auszug unten:

Quellcode

1
2
3
4
/* Module paramaters */
unsigned int debug = 0;
/* module_param(debug, uint, 644); */
/* MODULE_PARM_DESC(debug, "Driver debug level"); */


Jetzt geht es ans kompilieren und Installieren:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
raguecoe@rgc:~/CVS-Software/Eumex$ ./configure && make
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... 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 ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether make sets $(MAKE)... (cached) yes
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 grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ld used by gcc... /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 recognize 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 xlf... no
checking for f77... no
checking for frt... no
checking for pgf77... no
checking for cf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for xlf90... no
checking for f90... no
checking for pgf90... no
checking for pghpf... no
checking for epcf90... no
checking for gfortran... no
checking for g95... no
checking for xlf95... no
checking for f95... no
checking for fort... no
checking for ifort... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for ftn... 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... 98304
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/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 g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) 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/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 usb_init in -lusb... no
checking for ANSI C header files... (cached) yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/timeb.h usability... yes
checking sys/timeb.h presence... yes
checking for sys/timeb.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether gcc needs -traditional... no
checking whether lstat dereferences a symlink specified with a trailing slash... yes
checking whether lstat accepts an empty string... no
checking whether lstat dereferences a symlink specified with a trailing slash... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking for function prototypes... yes
checking whether setvbuf arguments are reversed... no
checking return type of signal handlers... void
checking for atexit... yes
checking for ftime... yes
checking for memchr... yes
checking for memset... yes
checking for select... yes
checking for strstr... yes
configure: Using kernel source at /lib/modules/2.6.22-14-generic/build
configure: creating ./config.status
config.status: creating Makefile
config.status: creating kernel/Makefile
config.status: creating kernel/flash/Makefile
config.status: creating kernel/konfig/Makefile
config.status: creating kernel/router/Makefile
config.status: creating kernel/usb/Makefile
config.status: creating userspace/Makefile
config.status: creating userspace/dispatcher/Makefile
config.status: creating userspace/dispatcher/usb/Makefile
config.status: creating userspace/dispatcher/seriell/Makefile
config.status: creating kernel/usb/kernel2.6/Makefile
config.status: creating config.h
config.status: executing depfiles commands
make  all-recursive
make[1]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
Making all in kernel
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
Making all in konfig
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT aws.o -MD -MP -MF ".deps/aws.Tpo" -c -o aws.o aws.c; \
    	then mv -f ".deps/aws.Tpo" ".deps/aws.Po"; else rm -f ".deps/aws.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT globales.o -MD -MP -MF ".deps/globales.Tpo" -c -o globales.o globales.c; \
    	then mv -f ".deps/globales.Tpo" ".deps/globales.Po"; else rm -f ".deps/globales.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT konfig.o -MD -MP -MF ".deps/konfig.Tpo" -c -o konfig.o konfig.c; \
    	then mv -f ".deps/konfig.Tpo" ".deps/konfig.Po"; else rm -f ".deps/konfig.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o main.c; \
    	then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT makros.o -MD -MP -MF ".deps/makros.Tpo" -c -o makros.o makros.c; \
    	then mv -f ".deps/makros.Tpo" ".deps/makros.Po"; else rm -f ".deps/makros.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT msn.o -MD -MP -MF ".deps/msn.Tpo" -c -o msn.o msn.c; \
    	then mv -f ".deps/msn.Tpo" ".deps/msn.Po"; else rm -f ".deps/msn.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT port.o -MD -MP -MF ".deps/port.Tpo" -c -o port.o port.c; \
    	then mv -f ".deps/port.Tpo" ".deps/port.Po"; else rm -f ".deps/port.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT rewr.o -MD -MP -MF ".deps/rewr.Tpo" -c -o rewr.o rewr.c; \
    	then mv -f ".deps/rewr.Tpo" ".deps/rewr.Po"; else rm -f ".deps/rewr.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT router.o -MD -MP -MF ".deps/router.Tpo" -c -o router.o router.c; \
    	then mv -f ".deps/router.Tpo" ".deps/router.Po"; else rm -f ".deps/router.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT utils.o -MD -MP -MF ".deps/utils.Tpo" -c -o utils.o utils.c; \
    	then mv -f ".deps/utils.Tpo" ".deps/utils.Po"; else rm -f ".deps/utils.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT info.o -MD -MP -MF ".deps/info.Tpo" -c -o info.o info.c; \
    	then mv -f ".deps/info.Tpo" ".deps/info.Po"; else rm -f ".deps/info.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT display.o -MD -MP -MF ".deps/display.Tpo" -c -o display.o display.c; \
    	then mv -f ".deps/display.Tpo" ".deps/display.Po"; else rm -f ".deps/display.Tpo"; exit 1; fi
/bin/bash
../../libtool --mode=link gcc -g -O2 -o emxconf aws.o globales.o
konfig.o main.o makros.o msn.o port.o rewr.o router.o utils.o info.o
display.o 
mkdir .libs
gcc -g -O2 -o emxconf aws.o globales.o konfig.o main.o makros.o msn.o port.o rewr.o router.o utils.o info.o display.o   
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
Making all in router
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
if
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -g -O2 -MT emxrouter.o -MD -MP -MF
".deps/emxrouter.Tpo" -c -o emxrouter.o emxrouter.c; \
    	then mv -f ".deps/emxrouter.Tpo" ".deps/emxrouter.Po"; else rm -f ".deps/emxrouter.Tpo"; exit 1; fi
if
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -g -O2 -MT uscmdsplit.o -MD -MP -MF
".deps/uscmdsplit.Tpo" -c -o uscmdsplit.o uscmdsplit.c; \
    	then mv -f ".deps/uscmdsplit.Tpo" ".deps/uscmdsplit.Po"; else rm -f ".deps/uscmdsplit.Tpo"; exit 1; fi
/bin/bash ../../libtool --mode=link gcc  -g -O2   -o emxrouter  emxrouter.o uscmdsplit.o  
mkdir .libs
gcc -g -O2 -o emxrouter emxrouter.o uscmdsplit.o   
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
Making all in flash
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT emxflash.o -MD -MP -MF ".deps/emxflash.Tpo" -c -o emxflash.o emxflash.c; \
    	then mv -f ".deps/emxflash.Tpo" ".deps/emxflash.Po"; else rm -f ".deps/emxflash.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. 	-g -O2 -MT xmodem.o -MD -MP -MF ".deps/xmodem.Tpo" -c -o xmodem.o xmodem.c; \
    	then mv -f ".deps/xmodem.Tpo" ".deps/xmodem.Po"; else rm -f ".deps/xmodem.Tpo"; exit 1; fi
/bin/bash ../../libtool --mode=link gcc  -g -O2   -o emxflash  emxflash.o xmodem.o  
mkdir .libs
gcc -g -O2 -o emxflash emxflash.o xmodem.o   
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
Making all in usb
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
Making all in kernel2.6
make[4]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6'
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex modules
make[5]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_usb.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_prot.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_driver.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_io_604.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_io_504.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_io_raw.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_user.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_user_list.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_net.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/emx_interface.o
  LD [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/eumex.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC  	/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/eumex.mod.o
  LD [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex/eumex.ko
make[5]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l modules
make[5]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/emx.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/isdnhdlc.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/i4l_to_emx.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/emx_to_i4l.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/utils.o
  CC [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/bcs.o
  LD [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/eumex_i4l.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "release_emx_interface" [/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/eumex_i4l.ko] undefined!
WARNING: "register_emx_interface" [/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/eumex_i4l.ko] undefined!
  CC  	/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/eumex_i4l.mod.o
  LD [M]  /home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6/eumex_i4l/eumex_i4l.ko
make[5]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
make[4]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6'
make[4]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[4]: Für das Ziel »all-am« ist nichts zu tun.
make[4]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[3]: Für das Ziel »all-am« ist nichts zu tun.
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
Making all in userspace
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/userspace'
if [ -e /usr/local/include/usb.h -o -e /usr/include/usb.h ] && \
    	[ -e /usr/lib/libusb -o -e /usr/lib/libusb.a -o -e \
    	/usr/local/lib/libusb -o -e /usr/local/lib/libusb.a ]; then \
    	make -C dispatcher all; fi
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/userspace'
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
make[2]: Für das Ziel »all-am« ist nichts zu tun.
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
make[1]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
raguecoe@rgc:~/CVS-Software/Eumex$


Das sind nun "Böhmische Dörfer" für mich. Was da abläuft, erschließt sich mir nicht wirklich ?( ?( !
Ist alles korrekt verlaufen oder gab es Probleme? Vielleicht kann mir das jemand verraten?
Wie dem auch sei, ich setzte mal voraus, dass alles glattlief und installierte den Treiber einfach mal:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
raguecoe@rgc:~/CVS-Software/Eumex$ sudo su
[sudo] password for raguecoe:
root@rgc:/home/raguecoe/CVS-Software/Eumex# make install
Making install in kernel
make[1]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
Making install in konfig
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
test -z "/usr/local/bin" || mkdir -p -- . "/usr/local/bin"
  /bin/bash ../../libtool --mode=install /usr/bin/install -c 'emxconf' '/usr/local/bin/emxconf'
/usr/bin/install -c emxconf /usr/local/bin/emxconf
make[3]: Für das Ziel »install-data-am« ist nichts zu tun.
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/konfig'
Making install in router
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
test -z "/usr/local/bin" || mkdir -p -- . "/usr/local/bin"
  /bin/bash ../../libtool --mode=install /usr/bin/install -c 'emxrouter' '/usr/local/bin/emxrouter'
/usr/bin/install -c emxrouter /usr/local/bin/emxrouter
make[3]: Für das Ziel »install-data-am« ist nichts zu tun.
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/router'
Making install in flash
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
test -z "/usr/local/bin" || mkdir -p -- . "/usr/local/bin"
  /bin/bash ../../libtool --mode=install /usr/bin/install -c 'emxflash' '/usr/local/bin/emxflash'
/usr/bin/install -c emxflash /usr/local/bin/emxflash
make[3]: Für das Ziel »install-data-am« ist nichts zu tun.
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/flash'
Making install in usb
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
Making install in kernel2.6
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6'
/bin/bash: line 0: test: 'uname: unary operator expected
depmod -e
rm -f /dev/eumex_cmd /dev/eumex_b1 /dev/eumex_b2 /dev/eumex_konf
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb/kernel2.6'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[4]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[4]: Für das Ziel »install-exec-am« ist nichts zu tun.
make[4]: Für das Ziel »install-data-am« ist nichts zu tun.
make[4]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel/usb'
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[3]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[3]: Für das Ziel »install-exec-am« ist nichts zu tun.
make[3]: Für das Ziel »install-data-am« ist nichts zu tun.
make[3]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
make[1]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/kernel'
Making install in userspace
make[1]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex/userspace'
if [ -e /usr/local/include/usb.h -o -e /usr/include/usb.h ] && \
    	[ -e /usr/lib/libusb -o -e /usr/lib/libusb.a -o -e \
    	/usr/local/lib/libusb -o -e /usr/local/lib/libusb.a ]; then \
    	make -C dispatcher install; fi
make[1]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex/userspace'
make[1]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
make[2]: Betrete Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
make[2]: Für das Ziel »install-exec-am« ist nichts zu tun.
make[2]: Für das Ziel »install-data-am« ist nichts zu tun.
make[2]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
make[1]: Verlasse Verzeichnis '/home/raguecoe/CVS-Software/Eumex'
root@rgc:/home/raguecoe/CVS-Software/Eumex#


So,
erst mal bis hierher. Wenn jemand Durchblick hat und mich aufklären
könnte, ob das hier alles bis hier seine Richtigkeit hat, wäre ich zu
triefendem Dank verpflichtet ;)
. Meine laienhafte Fähigkeiten sind hier eindeutig am Ende, da ich
nicht beurteilen kann, ob es sich um vernachlässigbare Meldungen (ihr
Auto ist grün) oder Fehlfunktionen (ihr Auto hat keinen Motor) handelt.
Vielen Dank an alle!

VG
McLane
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »McLane« (4. März 2008, 13:32)


ezazazel

The Supporter

Beiträge: 719

Ubuntu: 11.10

Kernel: 3.0.0-14-generic

Architektur: 32-bit

  • Private Nachricht senden

6

Dienstag, 4. März 2008, 17:25

Sehe auf die schnelle eigentlich keine Fehler. Kannst du es testen ob es funktioniert?
Scheint auf jeden Fall installiert worden zu sein. Nächster Schritt wäre ein depmod bzw. ein modprobe.
Si non confectus, non reficiat (If it's not broken, don't fix it)
Shuttle XPC SD39P2; Intel Core2Duo 6420; Samsung T166 SATA II 3,5" 500GB; Gainward Bliss 8600GT PCX SilentFx, Cinergy T USB XS hybrid && MSI Wind Nettop && Toshiba Portege M700 && Acer Aspire One

McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

7

Mittwoch, 5. März 2008, 08:07

Hallo und guten Morgen,

ich hatte gestern leider keine Zeit mehr, mich weiter mit dem Thema zu befassen, da ich leider Spätschicht hatte. Ich hatte zwar schon einen Test gemacht, der allerdings fehlschlug (Fehlermeldung: Anlage konnte nicht geöffnet werden). Ein "lsmod" zeigte gestern abend jedoch, dass das Modul Eumex geladen war. Ein vor den Konfigurationsbefehl gesetztes "sudo" war dann die Lösung (eigentlich auch logisch). Es funktioniert also. Das hätte ich ja nicht gedacht, das einmal ans laufen zu bekommen. Ich fürchte nur, dass mit einer neuen Kernelversion alles wieder von vorne beginnt.
Das sei auch mal dahingestellt. Die Hauptsache ist, dass ich jetzt die Anlage konfigurieren kann.

Was bedeuten eigentlich diese Meldungen (die ich wohl fälschlicherweise als Fehler interpretiert habe):

Quellcode

1
make[3]: Für das Ziel »all-am« ist nichts zu tun.


und z.B.

Quellcode

1
2
make[2]: Für das Ziel »install-exec-am« ist nichts zu tun.
make[2]: Für das Ziel »install-data-am« ist nichts zu tun.


Es müsste doch auch möglich sein, über eine beliebige Software Faxe zu versenden, oder? Muss dazu dann das Modul "eumex_i4l" installiert werden, welches normalerweise für den Internetzugang per ISDN benötigt wird?

Dann noch eine Frage an die erfahreneren Forengänger hier:
Lohnt es sich, hierfür ein Howto zu verfassen (ich habe da keine Erfahrungswerte)? Ich scheine ja nicht der Einzige mit diesem Problem gewesen zu sein. Auch zeigt mir meine eigene Erfahrung, dass brauchbare Anleitungen zu diesem Thema nicht greifbar sind, sondern man sich aus vielen Einzelversuchen seine eigene "Wahrheit" zusammenbasteln muss. Ihr könnt ja mal Eure Auffassung kundtun. Zu einem brauchbaren Howto ist es ja nur noch ein relativ kleiner Schritt, den ich durchaus auch noch vollziehen würde.

VG

McLane
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »McLane« (5. März 2008, 13:01)


McLane

hat sich gut eingelebt.

  • »McLane« ist der Autor dieses Themas

Beiträge: 42

Kernel: 2.6.22-14-generic

Architektur: 32-bit

  • Private Nachricht senden

8

Dienstag, 11. März 2008, 09:22

Hallo nochmal,

da keine weitere Antwort kommt, nehme ich mal an, dass keine Notwendigkeit für ein Howto besteht. Sollte es jemand anders sehen, bitte ich um kurze Rückmeldung. Für diesen Fall würde ich mich nochmal hinsetzen und eines schreiben. Vielen Dank jedenfalls an alle für ihre Hilfe.

VG

McLane
Wenn man alles Unmögliche ausklammert, bleibt am Ende nur die Wahrheit übrig.