rootfs搭建过程
本文仅适用于cortex a7系列
下载源码
wget /downloads/buildroot-.02.7.tar.gz
解压
sudo tar -vxf build.....
记下自己交叉编译链的位置和kernal的版本
gcc的版本,我是4.9.4
arm-linux-gnueabihf-gcc -v
查看kernal版本
cd /usr/local/arm/gcc-linaro-4.9.4-.01-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/include/linuxvim version.h
数字是10进制的,转换成16进制即可看到版本号。我这边是262144,对应的16进制是40000就是4.0的版本
记下自己的交叉编译链的位置
/usr/local/arm/gcc-linaro-4.9.4-.01-x86_64_arm-linux-gnueabihf
进入配置模式
make menuconfig
这一步如果进不去的话,查看下报错信息即可,应该是有一个库没有安装
正式开始配置
target options
Target Architecture选择 ARM(little endian)Target Architecture Variant 选择cortex-A7
tool chain
Toolchain type选择 external toolchaintoolchain 选择custom toolchaintoolchain path修改成直接的编译链地址toolchain prefix:在后面追加gnueabihfexternal toolchain gcc version 选择 4.9.xexternal toolchain kernal header series 选择4.0.xexternal toolchain c library 选择 glibc/eglibc
如果在ubuntu在wsl中或者使用ssh远程连接出现时,打错了路径按删除没有用的话,可以按住ctrl+删除
添加其他package(这里以添加python3为例)
Target package Interpreter languages and scripting python3
make all -j12
得到的文件目录在:/output/images中
其他注意事项
如果在make all 的过程中出现 python command not found时的解决方案如下:
sudo ln -s /usr/bin/python3.6 /usr/bin/python
其中的python3.6为该目录下python本版本,每个人的版本有所差异,查看后修改即可