<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.5730.11" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial size=2>All,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I have upgraded by home machine from Fedora Core 5
(FC5) to the recent FC6 and am struggling to build Zaptel-1.2.10 and
Asterisk-1.2.13 on the box... which is an Intep P4 2.8GHz HT processor box with
845 chipset, hence the kernel installed is 2.6.18-1.2798.fc6-i686 so we hve
this:</FONT></DIV>
<DIV> </DIV>
<DIV> [root@gate zaptel-1.2.10]# uname
-a<BR> Linux gate.tubby.org 2.6.18-1.2798.fc6 #1 SMP Mon Oct
16 14:54:20 EDT 2006 i686 i686 i386 GNU/Linux<BR></DIV>
<DIV><FONT face=Arial size=2>I have ensured that the kernel-devel package and
glibc-kernel headers are installed.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>When I attempt to compile Zaptel-1.2.10 I get the
following:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> make[1]: Entering directory
`/usr/src/kernels/2.6.18-1.2798.fc6-i686'<BR> CC
[M] /root/asterisk/zaptel-1.2.10/zaptel.o<BR> In file
included from /root/asterisk/zaptel-1.2.10/zaptel.c:40:<BR>
/root/asterisk/zaptel-1.2.10/zconfig.h:9:26: error: linux/config.h: No such file
or directory<BR> make[2]: ***
[/root/asterisk/zaptel-1.2.10/zaptel.o] Error 1<BR> make[1]:
*** [_module_/root/asterisk/zaptel-1.2.10] Error 2<BR>
make[1]: Leaving directory
`/usr/src/kernels/2.6.18-1.2798.fc6-i686'<BR> make: ***
[linux26] Error 2<BR></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>and can confirm that the file does not exist in the
path to the kernel source:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>
/usr/src/kernels/2.6.18-1.2798.fc6-i686/include/linux/</FONT></DIV>
<DIV><FONT face=Arial size=2><BR> </DIV></FONT>
<DIV><FONT face=Arial size=2>Grabbing the 2.6.18 source from <A
href="">ftp.kernel.org</A> and unpacking it finds the following
contents:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> #ifndef
_LINUX_CONFIG_H<BR> #define
_LINUX_CONFIG_H<BR> /* This file is no longer in use and kept
only for backward compatibility.<BR> * autoconf.h is now
included via -imacros on the commandline<BR>
*/<BR> #include <linux/autoconf.h></FONT></DIV>
<DIV><FONT face=Arial size=2> </FONT></DIV>
<DIV><FONT face=Arial size=2> #endif<BR></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>but it doesn't exist in the FC6 kernel tree for
2.6.18-1.2798.fc6 ...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Likewise, attempting to build Asterisk-1.2.13
fails thusly:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> chan_phone.c:41:29: error:
linux/compiler.h: No such file or directory<BR> make[1]: ***
[chan_phone.o] Error 1<BR> make[1]: Leaving directory
`/root/asterisk/asterisk-1.2.13/channels'<BR> make: ***
[subdirs] Error 1<BR> [root@gate
asterisk-1.2.13]#<BR></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>and the path:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> /usr/include/linux</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>doesn't have a compiler.h :o(</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Hacking at the Makefile I added:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>
INCLUDE+=-I/usr/src/kernels/2.6.18-1.2798.fc6-i686</FONT></DIV>
<DIV><FONT face=Arial size=2> </DIV></FONT>
<DIV><FONT face=Arial size=2>which gets us a compiler.h and the build process
continues somewhat further but then blows up due to a lack of zaptel.h (back to
first problem)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>My box is acient, having been RedHat 9, then FC2,
FC3, FC5 and now FC6 ... so just to prove I'm not going mad (or possibly more
likely the progressive upgrades left something broken) I did a clean install of
FC6 to a spare box and tried to build with the same results.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>So, to a bit more hacking... I copied "config.h" from the clean 2.6.18
kernel source tree to the FC6 tree in inlcude/linux and now I can compile and
install the zaptel stuff, but I can't load it:</DIV>
<DIV> </DIV>
<DIV> [root@gate zaptel-1.2.10]# modprobe
zaptel<BR> FATAL: Error inserting zaptel
(/lib/modules/2.6.18-1.2798.fc6/misc/zaptel.ko): Invalid module format<BR></DIV>
<DIV> </DIV>
<DIV>I've copied the compiler.h across to /usr/inlcude/linux and now I can
compile and link Asterisk-1.2.13 along with Asterisk-Addons-1.2.5 so I am able
to get my system back online but only by removing the zaptel configuration
:o(</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>Is Asterisk using deprecated kernel header files
that some distros have decided to stop supporting/shipping? What do I need to do
to get Zaptel drivers correctly compiled for my FC6 box?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Mike</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV></FONT></DIV></BODY></HTML>