Ubuntu16.4学习之zedboard安装交叉编译环境和交叉编译流程

上一篇中按照《嵌入式系统软硬件协同设计实战指南》配置之后发现并不好用,这次按照《xilinx zynq soc与嵌入式linux设计实战指南》进行配置

一、基本概念:

1、交叉编译:在一个平台上上生成另一个平台上可以执行的代码。

2、通过交叉编译工具可以在CPU能力很强、存储空间足够的主机平台下(PC机)编译出针对其他平台的可执行代码。

3、主机平台上安装交叉编译工具链,然后用他编译源代码,最终生成可在目标平台上运行的代码。

二、安装过程

1、 下载u-boot源码https://github.com/Xilinx/u-boot-xlnx/releases

2、 下载交叉编译器源码:

https://pan.baidu.com/share/link?shareid=2118817891&uk=2047711911&fid=131808308022716

3、(1)


   (2)复制xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin至zedboard文件夹下

  (3) chmod a+x xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin  增加可执行属性

   (4) ./ xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin 安装交叉编译器

   出现


(如果之前没有安装32位的库就会提示需要安装32的库。

apt-get install lib32ncurses5 ​

apt-get install lib32z1

zcu102交叉编译链还需安装这个库sudo apt-get install lib32stdc++6))

(5)此后步骤要先切换到root模式

上个步骤提示安装失败,执行dpkg进行重配置

输入sudo dpkg-reconfigure dash


弹出


按Tab键并选择NO

(6)重新安装


根据命令提示,按enter键


最后提示安装完成

(7)修改环境变量

sudo gedit /etc/environment 


修改完之后保存

(8)重启ubuntu,之后进入root模式

输入arm-xilinx-linux-gnueabi-gcc -v

最后显示


显示gcc的版本信息,表明交叉编译环境安装成功

三、编译系统内核

1.编译U-BOOT: 作用生成u-boot.elf用于生成BOOT.bin文件

(1)解压u-boot源码压缩 tar -zxvf u-boot-xlnx-xilinx-v2017.3.tar.gz

(2)针对zedboard开发板 

make CROSS_COMPILE=arm-xilinx-linux-gnueabi- zynq_zed_config

 make CROSS_COMPILE=arm-xilinx-linux-gnueabi-


如果zcu102的话,

make CROSS_COMPILE=aarch64-linux-gnu- xilinx_zynqmp_zcu102_rev1_0_config

make CROSS_COMPILE=aarch64-linux-gnu- 

 

需要安装两个库
sudo apt-get install  libssl-dev

apt-get install device-tree-compiler

2、编译内核: 生成uImage镜像文件

内核下载地址:https://github.com/Xilinx/linux-xlnx/releases?after=zynq-soc-for-4.6

(1)解压内核文件:tar -xzvf linux-xlnx-xilinx-v2017.3.tar.gz

(2)进入解压后的文件

(3)编译 

对内核进行配置和编译

make CROSS_COMPILE=arm-xilinx-linux-gnueabi- ARCH=arm xilinx_zynq_defconfig

make CROSS_COMPILE=arm-xilinx-linux-gnueabi- ARCH=arm



由图看到生成image和zimage镜像文件

解释:ARCH=arm是指该体系架构时ARM架构,CROSS_COMPILE是指定交叉编译器,xilinx_zynq_defconfig是默认厂家的配置文件

以上过程很慢

Zcu102:

make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 xilinx_zynqmp_defconfig

make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64

 

3、制作启动镜像

mkimage -f zcu102.its image.ub   将编译内核生成的Image和设备树文件*.dtb,生成image.ub文件

 

4、在sdk中,用fsbl文件,bit文件,u-boot.elf(点击Creat Boot Image按顺序添加这三个文件)生成BOOT.bin.

5、放入SD卡

为了zedboard上运行linux系统,需要启动文件BOOT.bin,linux内核镜像(zImage)、设备树(device tree blob)和文件系统。

BOOT.bit和image.ub文件放入SDfat分区,根文件系统放入ext4分区。

 

 

http://www.wiki.xilinx.com/Zynq+UltraScale%EF%BC%8B+MPSoC+Ubuntu+part+2+-+Building+and+Running+the+Ubuntu+Desktop+From+Sources

 

Eth: gcc serv.c -o serv  编译eth上位机源码生成可执行文件

cd  /run/media/mmcblk0p1

 

sudo tar -zxvf ROO1.tar.gz -C /media/andychen/ROOT1

route add default gw 10.12.13.2

route –n

ifconfig wlan0 up

iwlist wlan0 scanning | grep ESSID

iwconfig wlan0 essid "lijie"

ubuntu 123456

 

修改DNS :echo nameserver 192.168.43.1 > /etc/resolv.conf

Windows cmd下查看交换机已用IP :arp –a

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值