一.如何编译U-Boot
1.make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean2.make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- (加空格)mx6ull_14x14_ddr512_emmc_defconfig3.make V=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j12
第一条命令相当于“
make distclean
”,目的是清除工程,一般在第一次编译的时候最好清
理一下工程。第二条指令相当于“
make mx6ull_14x14_ddr512_emmc_defconfig
”,用于配置
uboot
,
配置文件为
mx6ull_14x14_ddr512_emmc_defconfig
。最后一条指令相当于 “
make -j12
”也就是
使用
12
核来编译
uboot
。当这三条命令执行完以后
uboot
也就编译成功了
可以将这三条语句做一个shell脚本,代码如下
1 #!/bin/bash2 make ARCH = arm CROSS_COMPILE = arm - linux - gnueabihf - distclean3 make ARCH = arm CROSS_COMPILE = arm - linux - gnueabihf - ( 加空格 )mx6ull_14x14_ddr512_emmc_defconfig4 make V = 1 ARCH = arm CROSS_COMPILE = arm - linux - gnueabihf - - j
注意:GCC编译器要使用官网的,不可使用ubuntu ;如果编译不过可能缺少gcc或者找不到gcc路径
如果已经下载gcc,则需要配置设置路径有两种方式:
1.打开~/.bashrc(此文件一般为隐藏文件,需要打开隐藏文件选项)
添加行119,路径根据实际地址改变
2.可以直接在ARCH后面添加gcc安装路径
make ARCH= arm CROSS_COMPILE=/usr/local/arm-linux-gnueabihf- distclean
二.如何连接以太网
按照此作者配置虚拟机网络:解决 U-Boot ping不通虚拟机的问题-CSDN博客
进行u-boot的IP配置:
setenv ipaddr 192.168.1.50setenv ethaddr b8:ae:1d:01:00:00setenv gatewayip 192.168.1.1setenv netmask 255.255.255.0setenv serverip 192.168.1.253saveenv
注意,网络地址环境变量的设置要根据自己的实际情况,确保
Ubuntu
主机和开发板的
IP 地址在同一个网段内,比如我现在的开发板和电脑都
192.168.1.0
这个网段内,所以设置开 发板的 IP
地址为
192.168.1.50
,我的
Ubuntu
主机的地址为
192.168.1.253
,因此
serverip
就是 192.168.1.253。
ethaddr
为网络
MAC
地址,是一个
48bit
的地址,如果在同一个网段内有多个 开发板的话一定要保证每个开发板的 ethaddr
是不同的,否则通信会有问题!设置好网络相关 的环境变量以后就可以使用网络相关命令了;