Template:S5P6818-KernelHeaderFile/zh
From FriendlyELEC WiKi
1 编译内核头文件安装包
以下操作在在开发板上进行:
1.1 本文适用于如下版本的固件
固件文件名: s5p6818-sd-friendlycore-xenial-4.4-arm64-YYYYMMDD.img, s5p6818-eflasher-friendlycore-xenial-4.4-arm64-YYYYMMDD.img 具体信息:
pi@NanoPC-T3:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.6 LTS Release: 16.04 Codename: xenial pi@NanoPC-T3:~$ cat /proc/version Linux version 4.4.172-s5p6818 (root@jensen) (gcc version 6.4.0 (ctng-1.23.0-150g-FA) ) #1 SMP PREEMPT Thu Jan 21 18:51:13 CST 2021
1.2 安装所需软件包
sudo apt-get update sudo apt-get install -y dpkg-dev bsdtar
1.3 制作内核头文件安装包
git clone https://github.com/friendlyarm/linux -b nanopi2-v4.4.y --depth 1 kernel-s5pxx18-arm64 cd kernel-s5pxx18-arm64 rm -rf .git make distclean touch .scmversion sed -i '/^CONFIG_CROSS_COMPILE/d' ./arch/arm64/configs/nanopi3_linux_defconfig make CROSS_COMPILE= ARCH=arm64 nanopi3_linux_defconfig alias tar=bsdtar make CROSS_COMPILE= ARCH=arm64 bindeb-pkg -j4
显示如下信息表示成功:
dpkg-deb: building package 'linux-firmware-image-4.4.172-s5p6818' in '../linux-firmware-image-4.4.172-s5p6818_4.4.172-s5p6818-1_arm64.deb'. dpkg-deb: building package 'linux-headers-4.4.172-s5p6818' in '../linux-headers-4.4.172-s5p6818_4.4.172-s5p6818-1_arm64.deb'. dpkg-deb: building package 'linux-libc-dev' in '../linux-libc-dev_4.4.172-s5p6818-1_arm64.deb'. dpkg-deb: building package 'linux-image-4.4.172-s5p6818' in '../linux-image-4.4.172-s5p6818_4.4.172-s5p6818-1_arm64.deb'. dpkg-genchanges: binary-only upload (no source code included)
1.4 安装
sudo rm -f /lib/modules/4.4.172-s5p6818/build sudo rm -f /lib/modules/4.4.172-s5p6818/source sudo dpkg -i ../linux-headers-4.4.172-s5p6818_4.4.172-s5p6818-1_arm64.deb
1.5 测试
以编译pf_ring模块为例, 参考文档 https://www.ntop.org/guides/pf_ring/get_started/git_installation.html.
git clone https://github.com/ntop/PF_RING.git cd PF_RING/kernel/ make CROSS_COMPILE=
编译完成后, 使用insmod尝试加载模块:
sudo insmod ./pf_ring.ko