Buildroot
来自百问网嵌入式Linux wiki
buildroot版本为2018.02LTS版 官网使用手册 #https://buildroot.org/downloads/manual/manual.html
目录
配置单板架构
Target options --->
Target Architecture (ARM (little endian)) ---> Target Binary Format (ELF) ---> Target Architecture Variant (cortex-A8) ---> Target ABI (EABIhf) ---> Floating point strategy (VFPv3-D16) ---> ARM instruction set (ARM) --->
构建配置
Build options --->
Commands ---> (/ti/mini437x_buildroot/configs/mini4378_defconfig) Location to save buildroot config ($(TOPDIR)/dl) Download dir ($(BASE_DIR)/host) Host dir Mirrors and Download locations ---> (0) Number of jobs to run simultaneously (0 for auto) [ ] Enable compiler cache [ ] build packages with debugging symbols [*] strip target binaries () executables that should not be stripped () directories that should be skipped when stripping gcc optimization level (optimize for size) ---> [ ] Enable google-breakpad support libraries (shared only) ---> ($(CONFIG_DIR)/local.mk) location of a package override file (board/mini335x/patches) global patch directories Advanced ---> *** Security Hardening Options *** Stack Smashing Protection (None) ---> RELRO Protection (None) ---> Buffer-overflow Detection (FORTIFY_SOURCE) (None) --->
配置工具链
Toolchain type (External toolchain) --->
│ │ ( ) Buildroot toolchain │ │ │ │ (X) External toolchain │ │
在线下载的
Toolchain type (External toolchain) ---> *** Toolchain External Options *** Toolchain (Custom toolchain) ---> Toolchain origin (Toolchain to be downloaded and installed) ---> (https://publishing-ap-linaro-org.s3.amazonaws.com/...) ($(ARCH)-linux-gnueabihf) Toolchain prefix External toolchain gcc version (5.x) ---> External toolchain kernel headers series (4.0.x) ---> External toolchain C library (glibc/eglibc) ---> [*] Toolchain has SSP support? [*] Toolchain has RPC support? [*] Toolchain has C++ support? () Extra toolchain libraries to be copied to target [ ] Copy gdb server to the Target *** Host GDB Options *** [ ] Build cross gdb for the host *** Toolchain Generic Options *** [ ] Copy gconv libraries [*] Enable MMU support () Target Optimizations () Target linker options [ ] Register toolchain within Eclipse Buildroot plug-in
系统配置
System configuration --->
配置登陆信息
Root FS skeleton (default target skeleton) ---> (mini437x) System hostname (Welcome to Mini437x) System banner Passwords encoding (md5) ---> Init system (systemV) ---> /dev management (Dynamic using devtmpfs + mdev) ---> (system/device_table.txt) Path to the permission tables [ ] support extended attributes in device tables [ ] Use symlinks to /usr for /bin, /sbin and /lib [*] Enable root login with password () Root password /bin/sh (bash) ---> [*] Run a getty (login prompt) after boot ---> [*] remount root filesystem read-write during boot (eth0) Network interface to configure through DHCP [*] Purge unwanted locales (C en_US) Locales to keep () Generate locale data [ ] Enable Native Language Support (NLS) -*- Install timezone info (default) timezone list (Etc/UTC) default local time () Path to the users tables (board/mini437x/rootfs-overlay) Root filesystem overlay directories (board/mini437x/post-build.sh) Custom scripts to run before creating filesystem images () Custom scripts to run inside the fakeroot environment (board/mini437x/post-image.sh) Custom scripts to run after creating filesystem images () Extra arguments passed to custom scripts
配置登陆串口
其它配置
配置linuxkernel
Kernel --->
│ │ [*] Linux Kernel │ │ │ │ *** Linux kernel in thumb mode may be broken with binutils >= 2.29 *** │ │ │ │ Kernel version (Latest version (4.15)) ---> │ │ │ │ () Custom kernel patches (NEW) │ │ │ │ Kernel configuration (Using an in-tree defconfig file) ---> │ │ │ │ () Defconfig name (NEW) │ │ │ │ () Additional configuration fragment files (NEW) │ │ │ │ Kernel binary format (zImage) ---> │ │ │ │ Kernel compression format (gzip compression) ---> │ │ │ │ [ ] Build a Device Tree Blob (DTB) (NEW) │ │ │ │ [ ] Install kernel image to /boot in target (NEW) │ │ │ │ [ ] Needs host OpenSSL (NEW) │ │ │ │ [ ] Needs host libelf (NEW) │ │ │ │ Linux Kernel Extensions ---> │ │ │ │ Linux Kernel Tools ---> │ │
包的管理
Target packages --->
-*- BusyBox (package/busybox/busybox.config) BusyBox configuration file to use? () Additional BusyBox configuration fragment files -*- Show packages that are also provided by busybox [ ] Enable SELinux support [ ] Individual binaries [ ] Install the watchdog daemon startup script Audio and video applications ---> Compressors and decompressors ---> Debugging, profiling and benchmark ---> Development tools ---> Filesystem and flash utilities ---> Fonts, cursors, icons, sounds and themes ---> Games ---> Graphic libraries and applications (graphic/text) ---> Hardware handling ---> Interpreter languages and scripting ---> Libraries ---> Mail ---> Miscellaneous ---> Networking applications ---> Package managers ---> Real-Time ---> Security ---> Shell and utilities ---> System tools ---> Text editors and viewers --->