1.交叉编译环境
用的正点原子的
/opt/atk-dlrk356x-toolchain/bin/aarch64-buildroot-linux-gnu-gcc -v
gcc 版本 10.3.0 (Buildroot 2018.02-rc3-g30e3a128)
2.需要先编译一遍内核,否则可能提示找不到scripts/xxxx
进入内核路径
make ARCH=arm64 CROSS_COMPILE=/opt/atk-dlrk356x-toolchain/bin/aarch64-buildroot-linux-gnu-
3.编译脚本时需要加上ARCH 和CROSS_COMPILE 选项
make ARCH=arm64 CROSS_COMPILE=/opt/atk-dlrk356x-toolchain/bin/aarch64-buildroot-linux-gnu-
4.编译后放入开发板后提示
insmod: cant insert ‘xxx.ko‘: Invalid parameters
解决方法1:查看开发板内核版本 uname -r
5.10.160-rockchip-rk356x
(2)打开本地/home/yue/sdk/orangepi-build/kernel/orange-pi-5.10-rk35xx/include/generated/utsrelease.h
将 #define后面的改为 xxxxxx
解决方法2(未验证是否起作用):
(1)找到开发板/proc/config.gz
(2)导出zcat config.gz > df.config
(3)将de.config导入内核下的arch/arm64/configs
(4) make de.config
(5)编译内核