博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uboot编译内容详解
阅读量:4283 次
发布时间:2019-05-27

本文共 15161 字,大约阅读时间需要 50 分钟。

1 uboot 配置

  • 配置过程
export ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-;make vexpress_ca9x4_defconfig;或make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- hi3531a_config
  • 配置过程作了什么
1/抓取过程make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- hi3531a_config  -n > ../log_config   1 rm -f include/config.h include/config.mk \  2     board/*/config.tmp board/*/*/config.tmp \  3     include/autoconf.mk include/autoconf.mk.dep  4 /home/xxx/sdk_root/Hi3531A_SDK_V1.0.4.0/osdrv/opensource/uboot/u-boot/mkconfig hi3531a arm hi3531a hi3531a NULL hi3531a  2/抓取结果 diff -ur u-boot_before_config u-boot_after_config > diff_config      1 只在 u-boot_after_config/arch/arm/include/asm 存在:arch  2 只在 u-boot_after_config/arch/arm/include/asm 存在:proc  3 只在 u-boot_after_config/include 存在:asm  4 只在 u-boot_after_config/include 存在:config.h  5 只在 u-boot_after_config/include 存在:config.mk

2 uboot 编译

  • 编译命令
export ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-;make -j8或make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- //上面的语句会读取配置的信息然后编译uboot,配置信息在config.h中
  • 编译过程做了什么
1/抓取过程make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- -n > ../log_make抓取过程太多,在附录1中附件  2/抓取结果diff -ur u-boot_before_make u-boot_after_make > diff_make只在 u-boot_after_make/api 存在:libapi.a只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:chip.o只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:cpu.o只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:.depend只在 u-boot_after_make/arch/arm/cpu/hi3531a/hi3531a 存在:.depend只在 u-boot_after_make/arch/arm/cpu/hi3531a/hi3531a 存在:libhi3531a.a只在 u-boot_after_make/arch/arm/cpu/hi3531a/hi3531a 存在:reset.o只在 u-boot_after_make/arch/arm/cpu/hi3531a/hi3531a 存在:timer.o只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:libhi3531a.a只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:lowlevel_init_v300.o只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:start.o只在 u-boot_after_make/arch/arm/cpu/hi3531a 存在:uart.o只在 u-boot_after_make/arch/arm/include/asm 存在:arch只在 u-boot_after_make/arch/arm/include/asm 存在:proc只在 u-boot_after_make/arch/arm/lib 存在:board.o只在 u-boot_after_make/arch/arm/lib 存在:bootm.o只在 u-boot_after_make/arch/arm/lib 存在:cache-cp15.o只在 u-boot_after_make/arch/arm/lib 存在:cache.o只在 u-boot_after_make/arch/arm/lib 存在:cpu_info.o只在 u-boot_after_make/arch/arm/lib 存在:ddr_layout.o只在 u-boot_after_make/arch/arm/lib 存在:ddr_size.o只在 u-boot_after_make/arch/arm/lib 存在:.depend只在 u-boot_after_make/arch/arm/lib 存在:eabi_compat.o只在 u-boot_after_make/arch/arm/lib 存在:interrupts.o只在 u-boot_after_make/arch/arm/lib 存在:libarm.a只在 u-boot_after_make/arch/arm/lib 存在:mmu.o只在 u-boot_after_make/arch/arm/lib 存在:process.o只在 u-boot_after_make/arch/arm/lib 存在:reset.o只在 u-boot_after_make/board/hi3531a 存在:board.o只在 u-boot_after_make/board/hi3531a 存在:.depend只在 u-boot_after_make/board/hi3531a 存在:libhi3531a.a只在 u-boot_after_make/common 存在:cmd_bootm.o只在 u-boot_after_make/common 存在:cmd_boot.o只在 u-boot_after_make/common 存在:cmd_ddr_training_v2.o只在 u-boot_after_make/common 存在:cmd_dec.o只在 u-boot_after_make/common 存在:cmd_fat.o只在 u-boot_after_make/common 存在:cmd_getinfo.o只在 u-boot_after_make/common 存在:cmd_help.o只在 u-boot_after_make/common 存在:cmd_load.o只在 u-boot_after_make/common 存在:cmd_mem.o只在 u-boot_after_make/common 存在:cmd_mii.o只在 u-boot_after_make/common 存在:cmd_nand.o只在 u-boot_after_make/common 存在:cmd_net.o只在 u-boot_after_make/common 存在:cmd_nvedit.o只在 u-boot_after_make/common 存在:cmd_pcmcia.o只在 u-boot_after_make/common 存在:cmd_sf.o只在 u-boot_after_make/common 存在:cmd_usb.o只在 u-boot_after_make/common 存在:cmd_version.o只在 u-boot_after_make/common 存在:cmd_vo_hi3531a.o只在 u-boot_after_make/common 存在:command.o只在 u-boot_after_make/common 存在:console.o只在 u-boot_after_make/common 存在:.depend只在 u-boot_after_make/common 存在:dlmalloc.o只在 u-boot_after_make/common 存在:download_process.o只在 u-boot_after_make/common 存在:env_common_func.o只在 u-boot_after_make/common 存在:env_common.o只在 u-boot_after_make/common 存在:env_nand.o只在 u-boot_after_make/common 存在:env_sf.o只在 u-boot_after_make/common 存在:exports.o只在 u-boot_after_make/common 存在:flash.o只在 u-boot_after_make/common 存在:flash_part.o只在 u-boot_after_make/common 存在:image.o只在 u-boot_after_make/common 存在:libcommon.a只在 u-boot_after_make/common 存在:main.o只在 u-boot_after_make/common 存在:memsize.o只在 u-boot_after_make/common 存在:miiphyutil.o只在 u-boot_after_make/common 存在:nand_logif.o只在 u-boot_after_make/common 存在:spiflash_logif.o只在 u-boot_after_make/common 存在:s_record.o只在 u-boot_after_make/common 存在:stdio.o只在 u-boot_after_make/common 存在:usb.o只在 u-boot_after_make/common 存在:usb_storage.o只在 u-boot_after_make/common 存在:xyzModem.o只在 u-boot_after_make/disk 存在:.depend只在 u-boot_after_make/disk 存在:libdisk.a只在 u-boot_after_make/disk 存在:part_dos.o只在 u-boot_after_make/disk 存在:part.o只在 u-boot_after_make/drivers/bios_emulator 存在:libatibiosemu.a只在 u-boot_after_make/drivers/block 存在:libblock.a只在 u-boot_after_make/drivers/ddr/cmd_bin 存在:ddr_cmd.bin只在 u-boot_after_make/drivers/ddr 存在:ddr_cmd_ctl.o只在 u-boot_after_make/drivers/ddr 存在:ddr_cmd_loc.o只在 u-boot_after_make/drivers/ddr 存在:ddr_training_boot.o只在 u-boot_after_make/drivers/ddr 存在:ddr_training_ctl.o只在 u-boot_after_make/drivers/ddr 存在:ddr_training_custom.o只在 u-boot_after_make/drivers/ddr 存在:ddr_training_impl.o只在 u-boot_after_make/drivers/ddr 存在:libddr.a只在 u-boot_after_make/drivers/dma 存在:libdma.a只在 u-boot_after_make/drivers/fpga 存在:libfpga.a只在 u-boot_after_make/drivers/gpio 存在:libgpio.a只在 u-boot_after_make/drivers/hwmon 存在:libhwmon.a只在 u-boot_after_make/drivers/i2c 存在:libi2c.a只在 u-boot_after_make/drivers/input 存在:libinput.a只在 u-boot_after_make/drivers/misc 存在:libmisc.a只在 u-boot_after_make/drivers/mmc 存在:libmmc.a只在 u-boot_after_make/drivers/mtd 存在:.depend只在 u-boot_after_make/drivers/mtd 存在:hifmc_common.o只在 u-boot_after_make/drivers/mtd 存在:hifmc_hi3531a.o只在 u-boot_after_make/drivers/mtd 存在:libmtd.a只在 u-boot_after_make/drivers/mtd/nand 存在:.depend只在 u-boot_after_make/drivers/mtd/nand/hifmc100 存在:libhifmcv100.a只在 u-boot_after_make/drivers/mtd/nand/hifmc100_nand 存在:libhifmc100_nand.a只在 u-boot_after_make/drivers/mtd/nand/hinfc301 存在:.depend只在 u-boot_after_make/drivers/mtd/nand/hinfc301 存在:hinfc301_spl_ids.o只在 u-boot_after_make/drivers/mtd/nand/hinfc301 存在:libhinfcv301.a只在 u-boot_after_make/drivers/mtd/nand/hinfc504 存在:libhinfcv504.a只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:.depend只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_gen.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_hynix_bg_bdie.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_hynix_bg_cdie.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_hynix_cg_adie.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_micron.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_samsung.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_read_retry_toshiba.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc610_spl_ids.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:hinfc620_gen.o只在 u-boot_after_make/drivers/mtd/nand/hinfc610 存在:libhinfcv610.a只在 u-boot_after_make/drivers/mtd/nand 存在:hinfc_common.o只在 u-boot_after_make/drivers/mtd/nand/hisnfc100 存在:libhisnfcv100.a只在 u-boot_after_make/drivers/mtd/nand 存在:libnand.a只在 u-boot_after_make/drivers/mtd/nand 存在:nand_base.o只在 u-boot_after_make/drivers/mtd/nand 存在:nand_bbt.o只在 u-boot_after_make/drivers/mtd/nand 存在:nand_ecc.o只在 u-boot_after_make/drivers/mtd/nand 存在:nand_ids.o只在 u-boot_after_make/drivers/mtd/nand 存在:nand.o只在 u-boot_after_make/drivers/mtd/nand 存在:nand_util.o只在 u-boot_after_make/drivers/mtd/onenand 存在:libonenand.a只在 u-boot_after_make/drivers/mtd/spi 存在:.depend只在 u-boot_after_make/drivers/mtd/spi/hifmc100 存在:.depend只在 u-boot_after_make/drivers/mtd/spi/hifmc100 存在:hifmc100.o只在 u-boot_after_make/drivers/mtd/spi/hifmc100 存在:hifmc100_os.o只在 u-boot_after_make/drivers/mtd/spi/hifmc100 存在:hifmc_spi_nor_ids.o只在 u-boot_after_make/drivers/mtd/spi/hifmc100 存在:libhifmcv100.a只在 u-boot_after_make/drivers/mtd/spi/hisfc300new 存在:libhisfcv300new.a只在 u-boot_after_make/drivers/mtd/spi/hisfc350 存在:libhisfcv350.a只在 u-boot_after_make/drivers/mtd/spi 存在:libspi_flash.a只在 u-boot_after_make/drivers/mtd/spi 存在:spi_compatible.o只在 u-boot_after_make/drivers/mtd/spi 存在:spi_ids.o只在 u-boot_after_make/drivers/mtd/ubi 存在:libubi.a只在 u-boot_after_make/drivers/net/higmac 存在:libhigmac.a只在 u-boot_after_make/drivers/net/higmacv300 存在:ctrl.o只在 u-boot_after_make/drivers/net/higmacv300 存在:.depend只在 u-boot_after_make/drivers/net/higmacv300 存在:higmac.o只在 u-boot_after_make/drivers/net/higmacv300 存在:libhigmacv300.a只在 u-boot_after_make/drivers/net/higmacv300 存在:mdio.o只在 u-boot_after_make/drivers/net/hisfv300 存在:libhisfv300.a只在 u-boot_after_make/drivers/net 存在:libnet.a只在 u-boot_after_make/drivers/net/phy 存在:libphy.a只在 u-boot_after_make/drivers/net/stmmac 存在:libstmmac.a只在 u-boot_after_make/drivers/pci 存在:libpci.a只在 u-boot_after_make/drivers/pcmcia 存在:.depend只在 u-boot_after_make/drivers/pcmcia 存在:libpcmcia.a只在 u-boot_after_make/drivers/pcmcia 存在:rpx_pcmcia.o只在 u-boot_after_make/drivers/pcmcia 存在:tqm8xx_pcmcia.o只在 u-boot_after_make/drivers/power 存在:libpower.a只在 u-boot_after_make/drivers/rtc 存在:date.o只在 u-boot_after_make/drivers/rtc 存在:.depend只在 u-boot_after_make/drivers/rtc 存在:librtc.a只在 u-boot_after_make/drivers/serial 存在:.depend只在 u-boot_after_make/drivers/serial 存在:libserial.a只在 u-boot_after_make/drivers/serial 存在:serial_pl01x.o只在 u-boot_after_make/drivers/spi 存在:libspi.a只在 u-boot_after_make/drivers/twserial 存在:libtws.a只在 u-boot_after_make/drivers/usb/gadget/hiudc 存在:libhiudc.a只在 u-boot_after_make/drivers/usb/gadget 存在:libusb_gadget.a只在 u-boot_after_make/drivers/usb/host/hiusb 存在:.depend只在 u-boot_after_make/drivers/usb/host/hiusb 存在:hiusb-ohci.o只在 u-boot_after_make/drivers/usb/host/hiusb 存在:libhiusb.a只在 u-boot_after_make/drivers/usb/host/hiusb 存在:xhci-mem.o只在 u-boot_after_make/drivers/usb/host/hiusb 存在:xhci.o只在 u-boot_after_make/drivers/usb/host/hiusb 存在:xhci-ring.o只在 u-boot_after_make/drivers/usb/host 存在:libusb_host.a只在 u-boot_after_make/drivers/usb/musb 存在:libusb_musb.a只在 u-boot_after_make/drivers/usb/phy 存在:libusb_phy.a只在 u-boot_after_make/drivers/video 存在:libvideo.a只在 u-boot_after_make/drivers/watchdog 存在:libwatchdog.a只在 u-boot_after_make/examples/standalone 存在:.depend只在 u-boot_after_make/examples/standalone 存在:hello_world只在 u-boot_after_make/examples/standalone 存在:hello_world.bin只在 u-boot_after_make/examples/standalone 存在:hello_world.o只在 u-boot_after_make/examples/standalone 存在:hello_world.srec只在 u-boot_after_make/examples/standalone 存在:libstubs.a只在 u-boot_after_make/examples/standalone 存在:stubs.o只在 u-boot_after_make/fs/cramfs 存在:libcramfs.a只在 u-boot_after_make/fs/ext2 存在:libext2fs.a只在 u-boot_after_make/fs/fat 存在:.depend只在 u-boot_after_make/fs/fat 存在:fat.o只在 u-boot_after_make/fs/fat 存在:file.o只在 u-boot_after_make/fs/fat 存在:libfat.a只在 u-boot_after_make/fs/fdos 存在:libfdos.a只在 u-boot_after_make/fs/jffs2 存在:libjffs2.a只在 u-boot_after_make/fs/reiserfs 存在:libreiserfs.a只在 u-boot_after_make/fs/ubifs 存在:libubifs.a只在 u-boot_after_make/fs/yaffs2 存在:libyaffs2.a只在 u-boot_after_make/include 存在:asm只在 u-boot_after_make/include 存在:autoconf.mk只在 u-boot_after_make/include 存在:autoconf.mk.dep只在 u-boot_after_make/include 存在:config.h只在 u-boot_after_make/include 存在:config.mk只在 u-boot_after_make/include 存在:timestamp_autogenerated.h只在 u-boot_after_make/include 存在:version_autogenerated.h只在 u-boot_after_make/lib 存在:crc16.o只在 u-boot_after_make/lib 存在:crc32.o只在 u-boot_after_make/lib 存在:ctype.o只在 u-boot_after_make/lib 存在:.depend只在 u-boot_after_make/lib 存在:display_options.o只在 u-boot_after_make/lib 存在:div64.o只在 u-boot_after_make/lib 存在:gunzip.o只在 u-boot_after_make/lib/hw_dec 存在:libhw_dec.a只在 u-boot_after_make/lib 存在:ldiv.o只在 u-boot_after_make/lib/libfdt 存在:libfdt.a只在 u-boot_after_make/lib 存在:libgeneric.a只在 u-boot_after_make/lib/lzma 存在:liblzma.a只在 u-boot_after_make/lib/lzo 存在:liblzo.a只在 u-boot_after_make/lib 存在:match_table.o只在 u-boot_after_make/lib 存在:net_utils.o只在 u-boot_after_make/lib 存在:string.o只在 u-boot_after_make/lib 存在:strmhz.o只在 u-boot_after_make/lib 存在:time.o只在 u-boot_after_make/lib 存在:vsnprintf.o只在 u-boot_after_make/lib 存在:vsprintf.o只在 u-boot_after_make/lib 存在:zlib.o只在 u-boot_after_make/net 存在:bootp.o只在 u-boot_after_make/net 存在:.depend只在 u-boot_after_make/net 存在:eth.o只在 u-boot_after_make/net 存在:libnet.a只在 u-boot_after_make/net 存在:net.o只在 u-boot_after_make/net 存在:rarp.o只在 u-boot_after_make/net 存在:tftp.o只在 u-boot_after_make/post 存在:libpost.a只在 u-boot_after_make/product 存在:.depend只在 u-boot_after_make/product/hiddrtv200 存在:libhiddrtv200.a只在 u-boot_after_make/product/hiosd/dec 存在:.depend只在 u-boot_after_make/product/hiosd/dec 存在:hi_JpegDecode.o只在 u-boot_after_make/product/hiosd/dec 存在:jpegd.o只在 u-boot_after_make/product/hiosd/dec 存在:jpeg_hdec_rwreg.o只在 u-boot_after_make/product/hiosd/dec 存在:jpeg_hdec_setpara.o只在 u-boot_after_make/product/hiosd/dec 存在:jpeg_hdec_table.o只在 u-boot_after_make/product/hiosd/dec 存在:libjpegd.a只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:de.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:.depend只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:drv_hlviic.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:eeprom.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:hdmi.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:hdmitx.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:infofrm.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:libhdmi.a只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:txvidp.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:txvptbl.o只在 u-boot_after_make/product/hiosd/hdmi/hi3531a 存在:vmtables.o只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:.depend只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:libvo.a只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:vou_coef_org.o只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:vou_drv.o只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:vou_hal.o只在 u-boot_after_make/product/hiosd/vo/hi3531a 存在:vou.o只在 u-boot_after_make/product/hiupdate 存在:auto_update.o只在 u-boot_after_make/product/hiupdate 存在:.depend只在 u-boot_after_make/product/hiupdate 存在:libhiupdate.a只在 u-boot_after_make/product 存在:libproduct.a只在 u-boot_after_make/product 存在:sample.o只在 u-boot_after_make 存在:System.map只在 u-boot_after_make/tools 存在:crc32.o只在 u-boot_after_make/tools 存在:default_image.o只在 u-boot_after_make/tools 存在:.depend只在 u-boot_after_make/tools 存在:envcrc只在 u-boot_after_make/tools 存在:envcrc.o只在 u-boot_after_make/tools 存在:env_embedded.o只在 u-boot_after_make/tools 存在:fdt.o只在 u-boot_after_make/tools 存在:fdt_ro.o只在 u-boot_after_make/tools 存在:fdt_rw.o只在 u-boot_after_make/tools 存在:fdt_strerror.o只在 u-boot_after_make/tools 存在:fdt_wip.o只在 u-boot_after_make/tools 存在:fit_image.o只在 u-boot_after_make/tools 存在:gen_eth_addr只在 u-boot_after_make/tools 存在:gen_eth_addr.o只在 u-boot_after_make/tools 存在:image.o只在 u-boot_after_make/tools 存在:imximage.o只在 u-boot_after_make/tools 存在:kwbimage.o只在 u-boot_after_make/tools 存在:md5.o只在 u-boot_after_make/tools 存在:mkimage只在 u-boot_after_make/tools 存在:mkimage.o只在 u-boot_after_make/tools 存在:os_support.o只在 u-boot_after_make/tools 存在:sha1.o只在 u-boot_after_make 存在:u-boot只在 u-boot_after_make 存在:u-boot.bin只在 u-boot_after_make 存在:u-boot.lds只在 u-boot_after_make 存在:u-boot.map只在 u-boot_after_make 存在:u-boot.srec

附录1:

转载地址:http://itigi.baihongyu.com/

你可能感兴趣的文章
Canvas入门(1):绘制矩形、圆、直线、曲线等基本图形
查看>>
Canvas入门(2):图形渐变和图像形变换
查看>>
Canvas入门(3):图像处理和绘制文字
查看>>
《千与千寻》给读者带来了什么?
查看>>
JQuery笔记:JQuery和JavaScript的联系与区别
查看>>
PHP的MySQL扩展:PHP访问MySQL的常用扩展函数
查看>>
PHP实现分页:文本分页和数字分页
查看>>
博客收录集的源代码分享,需要那就快来吧
查看>>
杂谈:HTML 5的消息通知机制
查看>>
Ajax异步请求PHP数据
查看>>
百家搜索:在网站中添加Google、百度等搜索引擎
查看>>
关于坛友的一个布局问题的解答
查看>>
网页抓取:PHP实现网页爬虫方式小结
查看>>
国民岳父的“屁民理论”
查看>>
我为什么要写博客?
查看>>
博客测试:博客系统i94web beta1.0 请求测试
查看>>
XAMPP:访问phpmyadmin出错的解决方案
查看>>
怎么用PHP在HTML中生成PDF文件
查看>>
PHP中我经常容易混淆的三组函数
查看>>
DOM笔记(一):HTMLDocument接口
查看>>