树莓派高阶课程--Linux内核编译

    科技2022-07-10  97

    编译: 安装必要的库: sudo apt-get install bc sudo apt-get install libncurses5-dev libncursesw5-dev sudo apt-get install zlib1g:i386 sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 1、执行menuconfig ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 make menuconfig 如果没什么改的就不用执行这一步。

    2、编译 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 make -j4 zImage modules dtbs 2>&1 | tee build.log 一般用这个指令:ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 make -j4 zImage modules dtbs 以n进程编译。不指明几进程的话则默认以单进程编译。

    编译后是否成功: 编译成功后,看到源码树目录多了vmlinux,失败则无此文件 没有压缩的linux 成功后,目标zImage镜像arch/arm/boot底下 真正的linux

    3、打包zImage文件(打包zImage成树莓派可用的xxx.img) 直接用linux源码包里的工具: ./scripts/mkknlimg arch/arm/boot/zImage ./kernel_new.img 在本目录生成一个kernel_new.img文件,这个文件就是要放到sd卡中的文件。

    Processed: 0.010, SQL: 8