buildroot配置实例

原文地址:http://blog.sina.com.cn/s/blog_14f1cd81a0102xnjs.html

一、网址

官网:https://buildroot.org/

下载地址:https://buildroot.org/download.html

 

二、使用

解压后,执行make  menuconfig

1.Target options (目标板配置)

    Target Architecture:             目标架构,这里选择 ARM(little endian),ARM小端模式

    Target Binary Format:           二进制格式,为 ELF

    Target Architecture Variant:架构变体为 arm920t,内核类型

    Target ABI:                           应用程序二进制接口,为EABI

    Floating point strategy:      浮点数的策略,选择为 Soft float

    ARM instruction set:           arm 汇编指令集,选择  ARM

    

2.Build options: (编译选项)

      主要是一些编译时用到的选项,比如dl的路径,下载代码包使用的路径,同时运行多个编译的上限,

    是否使能编译器缓冲区等等,这里按照默认就行了.

    

3.Toolchain:工具链选项

    Toolchain type:               Buildroot提供两种方式使用toolchain

      external toolthain:        非Buildroot提供的交叉编译器  

      Buildroot toolchain:       //Buildroot本身编译生成的Buildroot toolchain

        custom toolchain vendor name://填上S3C2440

    Toolchain:                   

       Sourcery CodeBench ARM 2014.05://下载的外部交叉编译器

       Custom toolchain:              自己的交叉编译器

    Toolchain origin (Pre-installed toolchain)  --->

    (/work/tools/usr/local/arm/4.3.2) Toolchain path  

    (arm-none-linux-gnueabi) Toolchain prefix

    C library:                    C库选择,选择 glibc/eglibc,不要选其他的。区别可以百度

    Kernel Headers:               //内核头文件,Linux 4.9.x kernel headers

    glibc version:                //glibc版本选择,2.24

    Binutils Version:             //binutils版本:2.27

    Additional binutils options:  附加的 binutils 选择,不填即可

    GCC compiler Version:         //GCC版本选择,gcc 6.x

    Additional gcc options:       //附件的GCC选项,不填写即可

    Enable C++ support:           使能C++支持,选上

    Enable Fortran support:       //使能Fortran语言支持,不选

    Enable compiler link-time-optimization support://是否支持LTO,不选,LTO是什么:                        

                                                                        //http://blog.csdn.net/fickyou/article/details/52381776

    Enable compiler OpenMP support://支持OpenMP?OpenMP用于共享内存并行系统的多处理器程序设计,OpenMP并不适合需要复杂的线程间同步和互斥的场合,OpenMp的另一个缺点是不能在非共享内存系统(如计算机集群)上使用。不选择

    Enable graphite support :     //是否支持graphite。Graphite是应用WEB应用的一套开源的编程接口。不选择。具体看百度百科:https://baike.baidu.com/item/Graphite/9810474?fr=aladdin

    Build cross gdb for the host: 主机上运行gdb进行调试,不选

    Copy gconv libraries:         //拷贝 gconv库,gconv库用于在不同字符集之间进行转换。默认不选即可

    Enable MMU support:           使能 MMU,S3C2440支持MMU,选上

    Target Optimizations:          不选

    Target linker options:          不选

    Register toolchain within Eclipse Buildroot plug-in:      //eclipse插件支持,不选

 

4.System configuration:系统配置

    Root FS skeleton:

    System hostname:                 JZ2440 (开发板的名称)

    System banner:                      欢迎语,如:Welcome to JZ2440

    Passwords encoding:             默认选项md5即可

    Init system:                             系统初始化,选择 BusyBox

    /dev management:                设备文件管理,选择Dynamic using devtmpfs + mdev,即使用mdev动态加载设备节点的方式

    Path to the permission tables:      设备节点的配置表设置,一定要选择system/device_table_dev.txt,否则后面在dev目录下将不会生成各种设备节点。当然我们也可以手动的配置该文件,添加必要的节点或删除不需要的节点。

    support extended attributes in device tables

    Use symlinks to /usr for /bin, /sbin and /lib

    Enable root login with password

    Root password:                      进入linux控制台终端后的密码,为空则登录时不需要密码,默认登录用户名为root。为空。

      /bin/sh (busybox‘ default shell)

    Run a getty (login prompt) after boot:  保持默认,默认为选中。

      TTY port:                                       配置为 ttySAC3

      Baudrate :                                    波特率,配置为 115200

    TERM environment variable:         默认即可

    other options to pass to getty:     默认即可

    remount root filesystem read-write during boot:   选中,表示可以进行动态的挂载

    

5.Kernel:内核配置

    Kernel version:                                内核版本,选择用户自定义,Custom version

    Kernel version:                                填上自己所需要的版本,3.4.2

    Custom kernel patches:                  自定义的内核补丁,本处:/work/system/linux-3.4.2_100ask.patch

    Kernel configuration:                     内核配置,本处选择/work/system/linux-3.4.2/config_ok

    Defconfig name:                            填写为 mini2440

    Additional configuration fragment files:   //暂且不填写

    Kernel binary format:                         内核二进制文件格式,uImage //zImage

    Kernel compression format:              内核压缩格式,选择gzip即可

    Build a Device Tree Blob:                  设备树,暂且不填写

    Install kernel image to /boot in target:   暂且不填

    Linux Kernel Extensions:                   内核扩展,默认不选择

    Linux Kernel Tools:                            内核工具,默认不选择

    

6.Target packages

    // ext2/3/4 root filesystem:               在ext2/3/4variant中选择ext4

    //tar the root filesystem:   选中

    Filesystem images:                     文件系统选择,选择 yaffs2 root filesystem

    

7.Bootloaders:硬件启动程序,选择为 U-boot

    Build system:                  

       // Kconfig:            若是选择2015.04之后的u-boot 选择此项

        legacy:              若是选择2015.04之前的u-boot 选择此项

    U-boot Version:          U-boot版本,默认为 2017.01,选择为Custom version

    U-Boot version:          填写为2012.04.01

    Custom U-boot patches:   U-boot补丁:/work/system/u-boot-2012.04.01_100ask.patch     //不添加

    //U-Boot configuration:    U-boot配置,暂时还没有U-BOOT,所以选择为:Using an in-tree board defconfig file

    //Board defconfig:           板子的配置,选择与架构一样的板子的默认文件,mini2440。后期再修改

    U-boot needs dtc:            是否需要设备树,默认,后期调试

    U-boot needs OpenSSL:  是否需要 OpenSSL,默认,后期调试修改

    U-boot binary format:      二进制文件,选择 .bin文件

    produce a .ift signed image:       默认

    Install U-boot SPL binary image:默认

    Environment image:              默认

 

8.Host utilities:                   默认

9.Legacy config options:   默认

你可能感兴趣的:(linux)