[Buildroot] how can i implement my kernel module and debug it

Esaïe Ledoux NJONGSSI KOUAM kouamdoux at gmail.com
Thu Oct 21 10:51:56 UTC 2021


thank you very much all of you.
It is working very well now .

So there is the kernel_module_test.mk :

KERNEL_MODULE_TEST_VERSION = 1.0
KERNEL_MODULE_TEST_SITE = kernel_module_test
KERNEL_MODULE_TEST_SITE_METHOD = local
$(eval $(kernel-module))
$(eval $(generic-package))

there is the output :

>>> kernel_module_test 1.0 Syncing from source dir kernel_module_test
rsync -au --chmod=u=rwX,go=rX  --exclude .svn --exclude .git --exclude .hg
--exclude .bzr --exclude CVS kernel_module_test/
/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0
>>> kernel_module_test 1.0 Configuring
>>> kernel_module_test 1.0 Building
>>> kernel_module_test 1.0 Building kernel module(s)
PATH="/home/ledoux/Documents/buildroot/output/host/bin:/home/ledoux/Documents/buildroot/output/host/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games"
PKG_CONFIG="/home/ledoux/Documents/buildroot/output/host/bin/pkg-config"
PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
PKG_CONFIG_LIBDIR="/home/ledoux/Documents/buildroot/output/host/lib/pkgconfig:/home/ledoux/Documents/buildroot/output/host/share/pkgconfig"
BR_BINARIES_DIR=/home/ledoux/Documents/buildroot/output/images
KCFLAGS=-Wno-attribute-alias /usr/bin/make -j3 -C
/home/ledoux/Documents/buildroot/output/build/linux-5.10.73
HOSTCC="/usr/bin/gcc -O2
-I/home/ledoux/Documents/buildroot/output/host/include
-L/home/ledoux/Documents/buildroot/output/host/lib
-Wl,-rpath,/home/ledoux/Documents/buildroot/output/host/lib" ARCH=x86_64
INSTALL_MOD_PATH=/home/ledoux/Documents/buildroot/output/target
CROSS_COMPILE="/home/ledoux/Documents/buildroot/output/host/bin/x86_64-buildroot-linux-uclibc-"
DEPMOD=/home/ledoux/Documents/buildroot/output/host/sbin/depmod
INSTALL_MOD_STRIP=1
 PWD=/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/.
M=/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/.
modules
make[1] : on entre dans le répertoire
« /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »
  CC [M]
 /home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./hello.o
  LD [M]
 /home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./HelloKernelModule.o
  MODPOST
/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./Module.symvers
  CC [M]
 /home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./HelloKernelModule.mod.o
  LD [M]
 /home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./HelloKernelModule.ko
make[1] : on quitte le répertoire
« /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »
>>> kernel_module_test 1.0 Installing to target
>>> kernel_module_test 1.0 Installing kernel module(s)
PATH="/home/ledoux/Documents/buildroot/output/host/bin:/home/ledoux/Documents/buildroot/output/host/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games"
PKG_CONFIG="/home/ledoux/Documents/buildroot/output/host/bin/pkg-config"
PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
PKG_CONFIG_LIBDIR="/home/ledoux/Documents/buildroot/output/host/lib/pkgconfig:/home/ledoux/Documents/buildroot/output/host/share/pkgconfig"
BR_BINARIES_DIR=/home/ledoux/Documents/buildroot/output/images
KCFLAGS=-Wno-attribute-alias /usr/bin/make -j3 -C
/home/ledoux/Documents/buildroot/output/build/linux-5.10.73
HOSTCC="/usr/bin/gcc -O2
-I/home/ledoux/Documents/buildroot/output/host/include
-L/home/ledoux/Documents/buildroot/output/host/lib
-Wl,-rpath,/home/ledoux/Documents/buildroot/output/host/lib" ARCH=x86_64
INSTALL_MOD_PATH=/home/ledoux/Documents/buildroot/output/target
CROSS_COMPILE="/home/ledoux/Documents/buildroot/output/host/bin/x86_64-buildroot-linux-uclibc-"
DEPMOD=/home/ledoux/Documents/buildroot/output/host/sbin/depmod
INSTALL_MOD_STRIP=1
 PWD=/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/.
M=/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/.
modules_install
make[1] : on entre dans le répertoire
« /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »
  INSTALL
/home/ledoux/Documents/buildroot/output/build/kernel_module_test-1.0/./HelloKernelModule.ko
  DEPMOD  5.10.73
make[1] : on quitte le répertoire
« /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »

the module.dep file :

kernel/drivers/char/hw_random/rng-core.ko:
kernel/drivers/char/hw_random/intel-rng.ko:
kernel/drivers/char/hw_random/rng-core.ko
kernel/drivers/char/hw_random/amd-rng.ko:
kernel/drivers/char/hw_random/rng-core.ko
kernel/drivers/char/hw_random/via-rng.ko:
kernel/drivers/char/hw_random/rng-core.ko
kernel/drivers/char/hw_random/virtio-rng.ko:
kernel/drivers/char/hw_random/rng-core.ko
kernel/drivers/thermal/intel/x86_pkg_temp_thermal.ko:
extra/HelloKernelModule.ko:

And there output/build/kernel_module_test-1.0 :

buildroot/output/build/kernel_module_test-1.0#  ls -la
total 148
drwxr-xr-x  2 root root  4096 21 oct.  12:38 .
drwxr-xr-x 57 root root  4096 21 oct.  12:38 ..
-rwxr-xr-x  1 root root   164 21 oct.  12:19 Config.in
-rwxr-xr-x  1 root root    25 21 oct.  08:03 external.desc
-rwxr-xr-x  1 root root    49 19 oct.  20:58 external.mk
-rw-r--r--  1 root root     0 21 oct.  12:38 .files-list-host.txt
-rw-r--r--  1 root root     0 21 oct.  12:38 .files-list-staging.txt
-rw-r--r--  1 root root   652 21 oct.  12:38 .files-list.txt
-rwxr-xr-x  1 root root   266 16 oct.  13:19 hello.c
-rw-r--r--  1 root root  3696 21 oct.  12:38 HelloKernelModule.ko
-rw-r--r--  1 root root   525 21 oct.  12:38 .HelloKernelModule.ko.cmd
-rw-r--r--  1 root root    80 21 oct.  12:38 HelloKernelModule.mod
-rw-r--r--  1 root root   534 21 oct.  12:38 HelloKernelModule.mod.c
-rw-r--r--  1 root root   292 21 oct.  12:38 .HelloKernelModule.mod.cmd
-rw-r--r--  1 root root  2648 21 oct.  12:38 HelloKernelModule.mod.o
-rw-r--r--  1 root root 30656 21 oct.  12:38 .HelloKernelModule.mod.o.cmd
-rw-r--r--  1 root root  1864 21 oct.  12:38 HelloKernelModule.o
-rw-r--r--  1 root root   372 21 oct.  12:38 .HelloKernelModule.o.cmd
-rw-r--r--  1 root root  1672 21 oct.  12:38 hello.o
-rw-r--r--  1 root root 29282 21 oct.  12:38 .hello.o.cmd
-rwxr-xr-x  1 root root   169 21 oct.  12:21 kernel_module_test.mk
-rwxr-xr-x  1 root root   296 21 oct.  12:28 Makefile
-rw-r--r--  1 root root    92 21 oct.  12:38 modules.order
-rw-r--r--  1 root root   306 21 oct.  12:38 .modules.order.cmd
-rw-r--r--  1 root root     0 21 oct.  12:38 Module.symvers
-rw-r--r--  1 root root   337 21 oct.  12:38 .Module.symvers.cmd
-rw-r--r--  1 root root     0 21 oct.  12:38 .stamp_built
-rw-r--r--  1 root root     0 21 oct.  12:38 .stamp_configured
-rw-r--r--  1 root root     0 21 oct.  12:38 .stamp_installed
-rw-r--r--  1 root root     0 21 oct.  12:38 .stamp_rsynced
-rw-r--r--  1 root root     0 21 oct.  12:38 .stamp_target_installed

I' so happy.
thank you for all again , ...

Le jeu. 21 oct. 2021 à 08:41, Andreas Ziegler <br015 at umbiko.net> a écrit :

> Hi Esaïe,
>
> check the variables in kernel_module_test.mk. They need to be prefixed
> with KERNEL_MODULE_TEST.
>
> On 2021-10-21 07:58, Esaïe Ledoux NJONGSSI KOUAM wrote:
> > Okay ...
> > I think I have a new form of error, I think it is while compiling.
> >
> > buildroot# make kernel_module_test-dirclean
> > rm -Rf
> > /home/ledoux/Documents/buildroot/output/build/kernel_module_test
> >
> > /buildroot# make
> >>>> kernel_module_test  Extracting
> >>>> kernel_module_test  Patching
> >>>> kernel_module_test  Configuring
> >>>> kernel_module_test  Building
> >>>> kernel_module_test  Building kernel module(s)
> >
> PATH="/home/ledoux/Documents/buildroot/output/host/bin:/home/ledoux/Documents/buildroot/output/host/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games"
> > PKG_CONFIG="/home/ledoux/Documents/buildroot/output/host/bin/pkg-config"
> > PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
> > PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
> >
> PKG_CONFIG_LIBDIR="/home/ledoux/Documents/buildroot/output/host/lib/pkgconfig:/home/ledoux/Documents/buildroot/output/host/share/pkgconfig"
> > BR_BINARIES_DIR=/home/ledoux/Documents/buildroot/output/images
> > KCFLAGS=-Wno-attribute-alias /usr/bin/make -j3 -C
> > /home/ledoux/Documents/buildroot/output/build/linux-5.10.73
> > HOSTCC="/usr/bin/gcc -O2
> > -I/home/ledoux/Documents/buildroot/output/host/include
> > -L/home/ledoux/Documents/buildroot/output/host/lib
> > -Wl,-rpath,/home/ledoux/Documents/buildroot/output/host/lib"
> > ARCH=x86_64
> > INSTALL_MOD_PATH=/home/ledoux/Documents/buildroot/output/target
> >
> CROSS_COMPILE="/home/ledoux/Documents/buildroot/output/host/bin/x86_64-buildroot-linux-uclibc-"
> > DEPMOD=/home/ledoux/Documents/buildroot/output/host/sbin/depmod
> > INSTALL_MOD_STRIP=1
> > PWD=/home/ledoux/Documents/buildroot/output/build/kernel_module_test/.
> > M=/home/ledoux/Documents/buildroot/output/build/kernel_module_test/.
> > modules
> > make[1] : on entre dans le répertoire «
> > /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »
> > scripts/Makefile.build:44:
> >
> /home/ledoux/Documents/buildroot/output/build/kernel_module_test/./Makefile:
> > Aucun fichier ou dossier de ce type
> > make[2]: *** Aucune règle pour fabriquer la cible «
> >
> /home/ledoux/Documents/buildroot/output/build/kernel_module_test/./Makefile
> > ». Arrêt.
> > make[1]: *** [Makefile:1822 :
> > /home/ledoux/Documents/buildroot/output/build/kernel_module_test/.]
> > Erreur 2
> > make[1] : on quitte le répertoire «
> > /home/ledoux/Documents/buildroot/output/build/linux-5.10.73 »
> > make: *** [package/pkg-generic.mk:295 [4] :
> >
> /home/ledoux/Documents/buildroot/output/build/kernel_module_test/.stamp_built]
> > Erreur 2
>
> <cut>
>
> Kind regards,
> Andreas
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.buildroot.org/pipermail/buildroot/attachments/20211021/2366d14b/attachment.html>


More information about the buildroot mailing list