编译内核、设备树与驱动模块

按照以下步骤,编译内核、设备树与驱动模块:
  1. 执行以下命令,设置编译Linux内核的默认设置:
    make <Configuration_File> CROSS_COMPILE=riscv64-linux-gnu- ARCH=riscv
    提示: <Configuration_File>:在昉·星光 2上,该文件为starfive_visionfive2_defconfig
  2. 在执行软件环境的设置后,执行以下命令编译源码:
    $ make CROSS_COMPILE=riscv64-linux-gnu- ARCH=riscv -j$(nproc)
  3. 执行以下命令,建立一个存放生成内核文件的目录:
    $ mkdir ../compiled
  4. 执行以下命令,编译生成configSystem.mapvmlinuz这几个文件到指定路径下:
    $ make CROSS_COMPILE=riscv64-linux-gnu- ARCH=riscv INSTALL_PATH=../compiled zinstall -j$(nproc)
    下图为示例输出:
    1. 示例输出
  5. 输入以下命令,复制dtb文件:
    $ cp arch/riscv/boot/dts/starfive/jh7110-visionfive-v2.dtb ../compiled
  6. (可选)执行以下命令,编译生成模块文件并安装到指定路径下:
    $ make ARCH=riscv CROSS_COMPILE=riscv64-linux-gnu- INSTALL_MOD_PATH=../compiled modules_install
    注: 若新的内核不涉及驱动模块的改动,此项可不执行,仍使用默认内核的驱动模块。
    下图为示例输出:
    2. 示例输出
    3. 示例输出
    注: Debian镜像的对应路径下并无build与source的链接,上图中的对应项可删除。