Hi,
I use a debian 3.0 woody with a self build kernel 2.4.17.
Please do not ask why I use an old distribution and an old kernel, I need this for developement.
Now I want to build a custom kernel module.
I have my sourcode (new.c) and my Makefile
Makefile:
Code:
obj-m += new.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
This should be realy easy but I don't get it to work.
If i execute <make> it compile the modules from the kernel and if i execute <make clean> it removes the modules from the kernel and not my new kernel module
This is the Output from make
Code:
kernel-2-4-17:~/proc# make
make -C /lib/modules/2.4.17/build M=/root/proc modules
make[1]: Entering directory `/usr/src/kernel-source-2.4.17'
make -C kernel CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/kernel'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/kernel'
make -C drivers CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/drivers'
make -C block modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/block'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/block'
make -C cdrom modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/cdrom'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/cdrom'
make -C char modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/char'
make -C drm modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/char/drm'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/char/drm'
make -C pcmcia modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/char/pcmcia'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/char/pcmcia'
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/char'
make -C hotplug modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/hotplug'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/hotplug'
make -C ide modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/ide'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/ide'
make -C media modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/media'
make -C radio modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/media/radio'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/media/radio'
make -C video modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/media/video'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/media/video'
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/media'
make -C misc modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/misc'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/misc'
make -C net modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/net'
make -C pcmcia modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/net/pcmcia'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/net/pcmcia'
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/net'
make -C parport modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/parport'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/parport'
make -C pnp modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/pnp'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/pnp'
make -C scsi modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/scsi'
make -C pcmcia modules
make[4]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/scsi/pcmcia'
make[4]: Nothing to be done for `modules'.
make[4]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/scsi/pcmcia'
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/scsi'
make -C sound modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/sound'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/sound'
make -C usb modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/usb'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/usb'
make -C video modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/drivers/video'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers/video'
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/drivers'
make -C mm CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/mm'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/mm'
make -C fs CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/fs'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/fs'
make -C net CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/net'
make -C ipv4 modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/net/ipv4'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/net/ipv4'
make -C netlink modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/net/netlink'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/net/netlink'
make -C sched modules
make[3]: Entering directory `/usr/src/kernel-source-2.4.17/net/sched'
make[3]: Nothing to be done for `modules'.
make[3]: Leaving directory `/usr/src/kernel-source-2.4.17/net/sched'
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/net'
make -C ipc CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/ipc'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/ipc'
make -C lib CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/lib'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/lib'
make -C arch/i386/kernel CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/arch/i386/kernel'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/arch/i386/kernel'
make -C arch/i386/mm CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/arch/i386/mm'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/arch/i386/mm'
make -C arch/i386/lib CFLAGS="-D__KERNEL__ -I/usr/src/kernel-source-2.4.17/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/kernel-source-2.4.17/include/linux/modversions.h" MAKING_MODULES=1 modules
make[2]: Entering directory `/usr/src/kernel-source-2.4.17/arch/i386/lib'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/kernel-source-2.4.17/arch/i386/lib'
make[1]: Leaving directory `/usr/src/kernel-source-2.4.17'
Why it doesn't make my kernel module?
What I do wrong?
Greetings
schirrmie