之前编写驱动都是自己单独编译内核,看完粤嵌GEC6818的文档傻眼了,用的是buildroot,好像和别人的buildroot还不一样
一般来说应该是先进入build root
make help
make linux-menuconfig
就和以前一样可以进行 menuconfig
想给内核去掉一个驱动
找到编译脚本,对命令进行查看
进入6818的源码包没有那个选项,只能去看shell脚本,看是怎么进行编译的
解压完后,有个可执行的mk文件 ,好就是他了
在里面找到内核编译的脚本
export PATH=${BS_DIR_UBOOT}/tools:$PATH
# Compiler kernel
cd ${BS_DIR_KERNEL} || return 1
make ${BS_CONFIG_KERNEL} ARCH=arm CROSS_COMPILE=${BS_CROSS_TOOLCHAIN_KERNEL} || return 1
make -j${threads} ARCH=arm CROSS_COMPILE=${BS_CROSS_TOOLCHAIN_KERNEL} || return 1
make -j${threads} ARCH=arm CROSS_COMPILE=${BS_CROSS_TOOLCHAIN_KERNEL} uImage || return 1
这些就应该是执行编译的命令了 我们用gedit crtl+f 进行替换一下
export PATH=./GEC6818uboot/tools:$PATH
# Compiler kernel
cd ./kernel || return 1
make GEC6818_defconfig ARCH=arm CROSS_COMPILE=/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- || return 1
make -j4 ARCH=arm CROSS_COMPILE=/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- || return 1
make -j4 ARCH=arm CROSS_COMPILE=/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- uImage || return 1
先对uboot进行编译路径的导入
让 GEC6818_defconfig 变成我们编译内核的 默认 .config //我就说之前怎么编译这么多次,内核原封不动
进行kernel的编译
编译出uIamge
进行内核的编译
进入内核的目录
cp ./gec6818_linux_config .config
make menuconfig
make -j4 ARCH=arm CROSS_COMPILE=../prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-
make -j4 ARCH=arm CROSS_COMPILE=../prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- uImage
现在就和之前编写kernel一样简单,我学术不精,有更好的东西,还要用以前的老办法,不过确实好用