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、安装一些库和包
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
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
sudo apt-get install texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev zlib1g:i386
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 则说明已经安装,否则没有
$ 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、建立安装文件夹,修改权限
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板。
相关文章:
Ubuntu中 petalinux 安装 移植linux --tftp/tftp-hpa服务的方法
Xilinx 文档 PetaLinux 指南:如何创建 PetaLinux 环境 (2019.1) PetaLinux工具参考指南 PetaLinux安装详解(Xilinx , linux, zynq, zynqMP) petalinux 2020.1安装教程 一、PetaLinux工具和库安装 PetaLinux 工具要求主机系统 /bin/sh 为“b…...
JVM(内存区域划分、类加载机制、垃圾回收机制)
目录 一. 内存区域划分 1.本地方法栈(Native Method Stacks) 2.虚拟机栈(JVM Stacks) 3.程序计数器(Program Counter Register) 4.堆(Heap) 5.元数据区(Metaspace) 二.类加载机制 1.加载 2.验证 3.准备 4.解析 5.初始化 "双亲委派模型" 三. GC 垃圾回收…...
C语言---基础内容(万字)
C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯里奇在贝尔电话实验室设计开发了 C 语言。 C 语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程…...
c语言从入门到函数速成(完结篇)
哈喽,小伙伴们大家好呀,本篇文章是这个系列的完结篇,希望大家看完后能有所收获哦 首先能看到这里的同学,一定也是自觉性比较强的了,我会在文章末尾给大家发点小福利 那么,我们先来通过数学中的函数来引入一…...
关于linux磁盘告警问题
案例:我们在执行df命令时,查看到磁盘利用率很高,但是到相对应的目录执行du -sh *来找大文件时进行删除时,发现各个目录相加并不大,如下图: 使用df命令查看到根(/)目录使用到33G,而du命令显示只使…...
冯喜运:5.27黄金暴跌大阴后出现“暂定符”今日黄金原油操作策略
【黄金消息面分析】:金价虽然有大阴线暴跌,但依然属于超买后的调整而非熊市,对中长线投资者来说只是市场洗牌。因此,在出现企稳迹象之后,随时关注反弹时机的启动。未来几日,黄金空头可能在进一步发力之前需…...
前端JS必用工具【js-tool-big-box】学习,获取全球重点城市时间
我们去住一些旅馆的时候,或者一些国际性网站,经常可以看见他们的钟表会展示一些国家地区的时间,这个就是很常用的功能。但如果不常接触这个功能的开发网站呢,大家就看自己电脑右下角的时间展示,就是自己当前的具体时间…...
BioTech - 将蛋白质的 PDB 格式文件 转换成 mmCIF 格式文件 (Python)
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/139234247 蛋白质的三维结构信息通常可以通过两种格式的文件来获取:PDB (Protein Data Bank) 和 mmCIF (Macromolecular Crystallographic Information File…...
【编程题-错题集】奇数位丢弃(模拟 - 规律)
牛客对应题目链接:奇数位丢弃_牛客题霸_牛客网 (nowcoder.com) 一、分析题目 通过⼀两个例子的模拟,可以发现:每次起始删除的下标都是 2 的次方。根据这个规律,找到最后⼀次删除的起始位置的下标即可。 二、代码 #include <io…...
Docker安装MongoDB(Linux版)
文章目录 前言一、Docker环境的准备1.安装依赖2.安装Docker 二、使用Docker安装MongoDB1.mongo版本选取2.拉取合适的镜像3.宿主机创建MongoDB需要挂载的文件夹4.第一次无认证创建mongo用户5.启动需要认证的mongo容器 问题汇总总结 前言 本文章主要介绍在Centos系统,…...
【设计模式】JAVA Design Patterns——Commander(指挥官模式)
🔍目的 用于处理执行分布式事务时可能遇到的所有问题。 🔍解释 处理分布式事务很棘手,但如果我们不仔细处理,可能会带来不想要的后果。假设我们有一个电子商务网站,它有一个支付微服务和一个运输微服务。如果当前运输…...
解决vue3项目vite打包忽略.vue扩展名
项目打包时报could not relolve “...”,因为vite已不再默认忽略.vue扩展名。 解决方法如下: 在vite.config.js中配置vite使其忽略 .vue 扩展名(不建议忽略) 注意:即使忽略了.vue文件,在实际写的时候也要加…...
Vue基础(数据绑定、export使用)
1、简介 在使用vue开发的过程中,经常会遇到一些容易混淆的问题,因此,在本文中进行汇总操作,只有通过不断总结学习,才能更好掌握vue的使用(每天进步一点)。 2、数据绑定 在js中定义数据…...
【传知代码】基于图神经网络的知识追踪方法(论文复现)
前言:本文将深入探讨基于图神经网络的知识追踪方法,旨在通过构建知识图谱来捕捉知识之间的复杂关联,并利用图神经网络强大的表示学习能力来建模学生的学习过程。我们将首先介绍图神经网络的基本原理和关键技术,然后详细阐述如何将…...
Vue与React、Angular的比较
Vue、React和Angular是前端开发中三个流行的JavaScript框架,它们各自具有不同的特点、优势和适用场景。以下是对这三个框架的比较: 1. 基本概念 Vue:Vue是一套用于构建用户界面的渐进式框架,其核心库专注于视图层,易…...
LINQ(二) —— 流式语句
总目录 C# 语法总目录 LINQ 二 —— 流式语句 1.1 序列相关部分运算符1.2 查询相关部分运算符 1.1 序列相关部分运算符 Take 运算符:Take 是拿出序列的几个数 Skip 运算符:Skip 是跳过序列的前几个数 Reverse 运算符:Reverse 是将序列反转 …...
怎么查看MySQL服务的最大连接,已经使用的连接数?怎么配置最大连接数?
要查看和配置MySQL服务的最大连接数以及已经使用的最大连接数,可以使用以下SQL语句和步骤: 查看MySQL服务的最大连接数和已经使用的最大连接数 查看当前最大连接数: SHOW VARIABLES LIKE max_connections;查看已经使用的最大连接数ÿ…...
微信小程序毕业设计-跑腿系统项目开发实战(附源码+演示视频+LW)
大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计…...
stm32通过esp8266连接阿里云平台代码讲解
连接服务器 首先,按照一定的规则,获取连接阿里服务器所需要的ClientID(客户端D)、Username(用户名)、Passward(密码),ServerIP(域名),ServerPort(…...
突发!某大厂机房掉电,MySQL数据库无法启动,紧急恢复过程...
作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复, 安装迁移,性能优化、故障…...
专业级批量二维码扫描工具V2.0|高精度图片二维码批量识别软件
温馨提示:文末有联系方式软件概述 一款专为高效处理多图场景设计的二维码批量识别解决方案——扩展批量二维码识别工具 V2.0 专业版。 无需逐张打开图片,即可全自动解析各类常见格式图像(JPG/PNG/BMP等)中嵌入的二维码信息&#x…...
从音频到全身动捕:手把手教你用AudCast和DITs生成带手势的AI视频(附开源项目分析)
从音频到全身动捕:手把手教你用AudCast和DITs生成带手势的AI视频(附开源项目分析) 在数字内容创作领域,AI视频生成技术正经历从静态图像到动态交互的跨越式发展。传统音频驱动视频方案往往局限于面部表情同步,而全身动…...
抢救你的数字青春:QQ空间记忆永久保存全攻略
抢救你的数字青春:QQ空间记忆永久保存全攻略 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 当你在整理旧物时偶然翻到泛黄的毕业照,是否会想起QQ空间里那些更鲜…...
突破流放之路BD构建瓶颈:PoeCharm汉化版全功能技术指南
突破流放之路BD构建瓶颈:PoeCharm汉化版全功能技术指南 【免费下载链接】PoeCharm Path of Building Chinese version 项目地址: https://gitcode.com/gh_mirrors/po/PoeCharm 在流放之路复杂的角色构建系统中,如何让每一份资源投入都转化为实实在…...
终极Win11优化指南:用Win11Debloat快速清理系统,性能提升70%
终极Win11优化指南:用Win11Debloat快速清理系统,性能提升70% 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to…...
BiliTools:5分钟学会高效管理你的B站学习资源
BiliTools:5分钟学会高效管理你的B站学习资源 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools 你是否曾经…...
手把手复现金蝶云星空V8.1文件上传漏洞(附POC与修复建议)
金蝶云星空V8.1文件上传漏洞深度解析与实战指南 在企业数字化转型浪潮中,云ERP系统的安全性日益成为关注焦点。近期曝光的金蝶云星空V8.1版本文件上传漏洞,因其无需认证即可利用的特性,被业界评为高危风险。本文将带您从技术原理到实战复现&…...
【从零开始学Java | 第二十九篇】数组工具类Arrays和集合工具类Collections
目录 前言 一、数组工具类Arrays 1.数组的打印 2.数组的排序和查找 3.数组的复制和扩容 4.数组转换集合 二、集合工具类Collections 1.排序和位置操作 2.查找和极值运算 前言 本次学习两个Java提供的工具类,第一个是用来操作数组的工具类——Arrays&#x…...
OpenClaw成本警报:gemma-3-12b-it的Token消耗监控与限额设置
OpenClaw成本警报:gemma-3-12b-it的Token消耗监控与限额设置 1. 为什么需要关注Token消耗? 上周我的OpenClaw自动化流程突然中断,检查日志发现是gemma-3-12b-it模型的API调用达到了限额。更让我后怕的是,如果这个限额不存在&…...
JavaScript中全局执行上下文与函数上下文的生成过程
全局执行上下文在JS引擎启动时创建,函数执行上下文在每次调用时创建;前者作用域链仅含全局环境,后者在创建阶段就基于定义位置固定作用域链;var和function声明被提升并初始化,let/const仅注册于词法环境而处于暂时性死…...
