Monteleone writes:
> Have a look please to the response i get when i try to compile ext_int:
>
> lnxtrs7:/ext_int # gcc ext_int.c -o ext_int
[...]
> Is there a particularity to compile this module ?

Yes, it's a kernel module so it's not the same as an ordinary
userland executable. For longer modules, I normally provide nice
READMEs and Makefiles but this one was so short I didn't. Sorry.
The following is the sort of thing you need
    gcc -D__KERNEL__ -I/lib/modules/2.4.19-3suse-SMP/build/include -Wall 
-Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -D__SMP__ -pipe 
-fno-strength-reduce -DMODULE -c ext_int.c

That works on SLES8 which makes the necessary kernel include files
available in /lib/modules/2.4.19-3suse-SMP/build/include (for the
kernel version I have). If you can't find an appropriate directory
in /lib/modules for your kernel version (or it doesn't have a "build"
subdirectory) then we'll have to play games installing the kernel
source package in which case let me know what distribution you have
(and it may have a kernel-includes package).

An older convention for kernel include files was to put them in
/usr/include/linux and /usr/include/asm or to use them from a source
tree in /usr/src/linux/include but that can lead to hard-to-find
problems when you have multiple kernels or source trees installed.

Given that this module only uses four particular kernel functions,
it's not really sensitive to versioning differences but I don't
want to do anything tasteless like send a binary module around.

--Malcolm

--
Malcolm Beattie <[EMAIL PROTECTED]>
Linux Technical Consultant
IBM EMEA Enterprise Server Group...
...from home, speaking only for myself

Reply via email to