Need help compiling ztdummy on a SMP

Preamble - I’m trying to get the ztdummy driver compiled and installed on a hosted gridserver. I’ve already got Asterisk 1.4.21.1 and FreePBX 2.4 up and running on the machine. Everything (for the most part) works fine - SIP clients, calling land lines via our SIP trunk, voicemail, call parking, MOH, etc. Asterisk itself was installed via RPMs

The last piece of the puzzle I want to get up and running is call conferencing. The Linux system I’m using does NOT have the ztdummy drivers installed. I tried installing the Zaptel drivers for it via RPM, but it does not have it. I’ve tried to compile the Zaptel drivers from source but I’m hitting a road block - lots of warnings and a compile error (see below). Any help would be much appreciated!

Output from uname -a:

[root@GSC zaptel-1.4.11]# uname -a
Linux GSC 2.6.18-xenU #2 SMP Mon Feb 11 16:59:22 PST 2008 x86_64 x86_64 x86_64 GNU/Linux

Output from make (I used make menuconfig to select only the ztdummy drivers to be built):

[root@GSC zaptel-1.4.11]# make
make[1]: Entering directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[2]: Entering directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[2]: `menuselect' is up to date.
make[2]: Leaving directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[1]: Leaving directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[1]: Entering directory `/usr/src/asterisk/zaptel-1.4.11'
make[2]: Entering directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[3]: Entering directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[3]: `menuselect' is up to date.
make[3]: Leaving directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make[2]: Leaving directory `/usr/src/asterisk/zaptel-1.4.11/menuselect'
make -C /lib/modules/2.6.18-xenU/build ARCH=x86_64 SUBDIRS=/usr/src/asterisk/zaptel-1.4.11/kernel HOTPLUG_FIRMWARE=no KBUILD_OBJ_M="zaptel.o ztdummy.o " modules
make[2]: Entering directory `/lib/modules/2.6.18-xenU/build'
  CC [M]  /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.o
In file included from /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.c:41:
include/linux/kernel.h:115: warning: conflicting types for built-in function ‘snprintf’
include/linux/kernel.h:117: warning: conflicting types for built-in function ‘vsnprintf’
In file included from include/linux/string.h:21,
                 from include/asm/mach-xen/asm/page.h:33,
                 from include/asm/thread_info.h:13,
                 from include/linux/thread_info.h:21,
                 from include/linux/preempt.h:9,
                 from include/linux/spinlock.h:49,
                 from include/linux/capability.h:45,
                 from include/linux/sched.h:44,
                 from include/linux/module.h:9,
                 from /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.c:43:
include/asm/string.h:44: warning: conflicting types for built-in function ‘strncpy’
include/asm/string.h:80: warning: conflicting types for built-in function ‘strncat’
include/asm/string.h:125: warning: conflicting types for built-in function ‘strncmp’
include/asm/string.h:189: warning: conflicting types for built-in function ‘strlen’
include/asm/string.h:326: warning: conflicting types for built-in function ‘memmove’
In file included from include/asm/mach-xen/asm/page.h:33,
                 from include/asm/thread_info.h:13,
                 from include/linux/thread_info.h:21,
                 from include/linux/preempt.h:9,
                 from include/linux/spinlock.h:49,
                 from include/linux/capability.h:45,
                 from include/linux/sched.h:44,
                 from include/linux/module.h:9,
                 from /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.c:43:
include/linux/string.h:76: warning: conflicting types for built-in function ‘strspn’
include/linux/string.h:79: warning: conflicting types for built-in function ‘strcspn’
include/linux/string.h:95: warning: conflicting types for built-in function ‘__builtin_memcmp’
In file included from include/asm/mach-xen/asm/system.h:9,
                 from include/asm/mach-xen/asm/processor.h:18,
                 from include/asm/thread_info.h:16,
                 from include/linux/thread_info.h:21,
                 from include/linux/preempt.h:9,
                 from include/linux/spinlock.h:49,
                 from include/linux/capability.h:45,
                 from include/linux/sched.h:44,
                 from include/linux/module.h:9,
                 from /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.c:43:
include/asm/mach-xen/asm/hypervisor.h:103: error: expected ‘)’ before ‘*’ token
In file included from include/asm/elf.h:52,
                 from include/linux/elf.h:7,
                 from include/linux/module.h:16,
                 from /usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.c:43:
include/asm/mach-xen/asm/desc.h: In function ‘set_ldt_desc’:
include/asm/mach-xen/asm/desc.h:78: warning: cast from pointer to integer of different size
make[3]: *** [/usr/src/asterisk/zaptel-1.4.11/kernel/zaptel-base.o] Error 1
make[2]: *** [_module_/usr/src/asterisk/zaptel-1.4.11/kernel] Error 2
make[2]: Leaving directory `/lib/modules/2.6.18-xenU/build'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/asterisk/zaptel-1.4.11'
make: *** [all] Error 2

In searcing here, I also saw that zaprtc could also be used - should I try to use this driver?
voip-info.org/wiki-Asterisk+timer
voip-info.org/wiki/view/Asterisk+zaprtc

Thanks.

LaterZ!
Darren!!