这是我第一次尝试创建内核模块,显然在创建模块后我需要按照以下步骤来编译它:
echo "obj-m := Hello.c" > Makefile
make -C /lib/modules/`uname -r`/build M=$PWD modules
uname -r
这是我的问题,“/lib/modules/ /”目录中没有“build” !
我在这里缺少什么?
答案1
刚刚发现,缺少以下软件包,需要在编译任何 Linux 内核模块之前安装:
sudo apt-get install -y linux-headers-`uname -r`
然后我们准备编译模块
echo "obj-m := Hello.c" > Makefile
make -C /lib/modules/`uname -r`/build M=$PWD modules
sudo insmod Hello.ko