Re: Problem beim fritz kompilieren
Guten Tag Gerhard Brauer,
am Sonntag, 30. April 2006 um 06:37 schrieben Sie:
> Gruesse!
> * Stefan Schilling <mail.suse@gmx.de> schrieb am [29.04.06 19:22]:
>>
>> OK, ich hab gestern abend einen neuen Kernel gebastelt und musste dann
>> deshalb natürlich auch die fritzcard Treiber neumachen.
>>
>> korfu:/usr/local/src# cd fritz/src/
>> korfu:/usr/local/src/fritz/src# make
>> make -C /lib/modules/2.6.16.9/build SUBDIRS=/usr/local/src/fritz/src modules
>> make[1]: Entering directory `/usr/src/linux-2.6.16.9'
>> CC [M] /usr/local/src/fritz/src/main.o
>> In file included from /usr/local/src/fritz/src/queue.h:27,
>> from /usr/local/src/fritz/src/tables.h:31,
>> from /usr/local/src/fritz/src/driver.h:31,
>> from /usr/local/src/fritz/src/main.c:45:
>> /usr/local/src/fritz/src/tools.h:74: Fehler: Fehler beim Parsen vor "typeof"
>> make[2]: *** [/usr/local/src/fritz/src/main.o] Fehler 1
>> make[1]: *** [_module_/usr/local/src/fritz/src] Fehler 2
>> make[1]: Leaving directory `/usr/src/linux-2.6.16.9'
>> make: *** [fcpci.ko] Fehler 2
>>
>> Also nochmal in Kurz:
>>
>> gcc + make Version 4.x:
>> - nichts geht
>>
>> gcc+make Version 3.x:
>> - sowohl fcpci als auch fcclassic lassen sich compibilieren
>>
>> Hat es da eine Änderung gegeben? Wie kann ich das hier korrigieren
>> oder muss ich den Compiler auf Ver. 3.x zurückstellen?
> Ich habe es bisher nie mit einem gcc/make > 3 versucht (kann ich später
> mal austesten), aber als evtl. Tips:
> - Weder in main.c noch tools.h habe ich auf die schnelle die
> angemeckerte typeof gefunden. Kann also sein, daß das Problem bei der
> Inkludierung der Kernel-Includes passiert. Teste doch mal, in dem du dem
> include-Zweig deines aktuellen Kernel Vorrang vor dem (testing war es
> glaube ich) System-Include gibst. Sollte sich mit einem gcc/make
> Schalter bzw. IncludePath(env) machen lassen, ich bin allerdings nicht
> der C-Programmierer. Oder durch einfaches temporäres Umlinken von
> /usr/include/linux nach dem Entsprechenden deines Kernel-Trees.
Ich hab nochmal nachgeschaut, in der fritz/src/tools.h befindet sich
folgende Befehlsreihe:
extern void lprintf (const char *, const char *, ...);
extern void vlprintf (const char *, const char *, va_list);
/*---------------------------------------------------------------------------*\
\*---------------------------------------------------------------------------*/
static inline unsigned long atomic_xchg (
volatile atomic_t * v,
unsigned value
) {
return __xchg (value, &v->counter, sizeof (unsigned));
} /* atomic_xchg */
/*---------------------------------------------------------------------------*\
er stört sich halt an diesem "sizeof (unsigned))". Daher denke ich
nicht, dass es ein generelles Kernelproblem ist; der Befehl findet
sich ja nicht in irgendeinem Kernelmodul sondern in dem Treiberpaket
selbst.
> Ob es da generell eine Änderung bei gcc/make gegeben hat kann ich nicht
> sagen, evtl. geben die README.Debian bzw. changelogs einen Hinweis.
hmh, k, ich schau nachher mal nach...bin noch müde ;)
Danke nochmal.
ciao,
Stefan
Reply to: