Ubuntu中 petalinux 安装 移植linux --tftp/tftp-hpa服务的方法

Xilinx 文档
PetaLinux 指南:如何创建 PetaLinux 环境 (2019.1)
PetaLinux工具参考指南
PetaLinux安装详解(Xilinx , linux, zynq, zynqMP)
petalinux 2020.1安装教程

一、PetaLinux工具和库安装

PetaLinux 工具要求主机系统 /bin/sh 为"bash"。如果使用 Ubuntu 分布,而 /bin/sh 为"dash",使用 sudo dpkg-reconfigure dash命令更改默认的系统 shell /bin/sh更改(选择"否",更改完再用查看一下是否更改成功)。

查看目前是dash还是bash命令:ls -l /bin/sh

1、安装一些库和包

bash 复制代码
sudo apt-get install tofrodos gawk xvfb git libncurses5-dev tftpd zlib1g-dev zlib1g-dev:i386 libssl-dev flex bison chrpath socat autoconf libtool texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev screen pax
bash 复制代码
sudo apt-get install texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev zlib1g:i386 libncurses5 libncurses5-dev libc6:i386 libstdc++6:i386 zlib1g:i386 libssl-dev tftpd tftp openbsd-inetd
bash 复制代码
sudo apt-get install texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev zlib1g:i386
bash 复制代码
sudo dpkg --add-architecture i386
sudo apt-get update
sudo dpkg-reconfigure dash

Ubuntu中安装tftp/tftp-hpa服务 【install tftp】

检查tftp是否已经安装:netstat -a | grep tftp 若出现:

udp 0 0 *:tftp 则说明已经安装,否则没有

bash 复制代码
$ sudo apt-get install tftp-hpa tftpd-hpa

$ mkdir ~/tftpboot

$ chmod 777 ~/tftpboot/

$ sudo gedit /etc/default/tftpd-hpa

    # /etc/default/tftpd-hpa 
     
    TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/home/james/tftpboot"    //tftpboot绝对路径
    TFTP_ADDRESS=":69"
    TFTP_OPTIONS="--secure  -l -c -s"


$ service tftpd-hpa restart

安装完成!测试方法:

在/tftpboot 目录下随便放个文件abc

然后 运行tftp 192.168.133.3(ifconfig下NAT网卡) 进入tftp命令行

输入get abc 看看是不是能把文件下下来,如果可以就可以了,也可以put 文件上去

2、建立安装文件夹,修改权限

bash 复制代码
sudo -s
mkdir -p  petalinux
chown <your_user_name> petalinux
chgrp <your_user_name> petalinux
chgrp <your_user_name> petalinux
chown <your_user_name> petalinux
exit

然后将下载的.run文件移动到此文件夹(petalinux)

3、安装 petalinux

./petalinux-v2023.2-10121855-installer.run

随后使用回车查看协议,q退出查看,y同意进行安装

4、使用

启动环境配置

cd petalinux
source settings.sh

使用

调用 petalinux-create 命令有如下输出,说明安装成功了。

验证

echo $PETALINUX

出现petalinux路径,即安装成功

二、搭建工程

source settings.sh

1、 创建工程

petalinux-create -t project --template zynq --name xvc_linux

这样就创建了一个基于zynq芯片模板,name 名为 xvc_linux 的工程了。

template属性可以选择zynqMP , zynq and microblaze

cd xvc_linux // 切换到 petaLinux 项目目录

2、配置工程【导入硬件说明】========

经Vivado综合,实现后,在Vivado中导出硬件,输出PetaLinux所需要的硬件描述文件

输出的文件就在"/(工程文件夹)/(工程名).sdk"这个文件夹下,这个文件夹下的system_wrapper.hdf待用

把导出的硬件描述文件system_wrapper.hdf拷贝到虚拟机中的 xvc_linux 工程文件夹下,然后: (system.xsa)

petalinux-config --get-hw-description=/home/book/petalinux/xvc_linux

会进入一个配置界面,在里面我们可以配置一些系统参数,主要的配置包括:启动方式,启动存储器分区表,启动文件名称等等,本文暂不对其修改(默认是从SD卡中启动),然后等待其配置(时间较长)

弹出petalinux 工程配置窗口,保持默认后退出。

3、创建要在 PetaLinux 上运行的应用程序

创建并启用一个C模板应用程序,使用以下命令导入Linux构建

petalinux-create -t apps -n xvcServer --enable --template c

这将创建一个名为xvcServer的模板应用程序,它将替换模板,

应用程序的应用软件位于这里:sw/source/app/xvcServer.c 此处下载 xapp1251

在命令提示符中输入以下命令:

cp .../.../source/app/xvcServer.c ./components/apps/xvcServer/

4 、编译一个工程,构建系统镜像:

petalinux-build

5 、生成BOOT.bin文件

petalinux-package --boot --format BIN --fsbl ./images/linux/zynq_fsbl.elf --u-boot --force

6、

boot.bin文件位于PetaLinux项目目录下,而image.ub文件位于./images/linux录下。

将这两个文件复制到MicroSD卡中,然后插入MicroZed板。

相关推荐
荒Huang5 分钟前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
海阔天空_201316 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
桥田智能18 分钟前
气爪在自动化装配线中是如何应用的?
运维·自动化
零意@24 分钟前
ubuntu切换不同版本的python
windows·python·ubuntu
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
hjjdebug2 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯2 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
写bug的小屁孩2 小时前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
斑布斑布2 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习