赞
踩
1.新装系统后 需要设置su密码:
方法 sudo passwd
提示“Enter new UNIX password”
退出root:su 用户名
2 . 修改Ubuntu的软件源,改成国内的服务器地址,这里选择了aliyun,然后执行
sudo apt-get update
sudo apt-get upgrade
dash->bash
修改/bin/sh,因为ubuntu默认的“/bin/sh”是dash,需要修改成bash
$ ls -al /bin/sh #查看未修改之前的/bin/sh
lrwxrwxrwx 1 root root 4 5月 29 16:40 /bin/sh -> dash
$ sudo dpkg-reconfigure dash #修改,弹出的对话框选择“否”
$ ls -al /bin/sh #查看修改后的/bin/sh
lrwxrwxrwx 1 root root 4 5月 30 15:14 /bin/sh -> bash
虚拟机Oracle VM VirtualBox linux系统如何访问windows共享文件夹
[oracle@ODIGettingStarted ~]$ su
Password:
[root@ODIGettingStarted oracle]# mkdir /mnt/Windows_Share
[root@ODIGettingStarted oracle]# mount -t vboxsf VirtureBox_Share /mnt/Windows_Share/
[root@ODIGettingStarted oracle]#
https://www.cnblogs.com/dpf-learn/p/6143084.html
https://blog.csdn.net/binbinxyz/article/details/42785849 成功
修改文件‘/etc/rc.local’实现自动挂载共享文件夹到指定文件夹virtualbox面板中选定要操作的虚拟机–>设置–>共享文件夹–>添加共享文件夹–>勾选‘固定分配’。打开Linux终端,输入:sduo vi /etc/rc.local打开rc.local文件
可以看到这个脚本是默认不运行的,所以我们要把’exit 0‘这行删除,并添加以下内容:mount -t vboxsf sharefolder /mysharefolder’sharefolder’是我们设置的windows下的要共享的文件夹,’/mysharefolder’是我们设置的linux下要共享的文件夹。重启虚拟机即可。
链接:https://www.jianshu.com/p/39327c9ea368
5.安装lib
汇总
sudo apt-get install -y gcc git make net-tools libncurses5 libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev zlib1g:i386 libc6:i386 libstdc++6:i386 screen pax gzip tofrodos iproute2 gawk xvfb vim tftp openbsd-inetd python x11proto-xf86dga-dev
gedit /etc/inetd.conf
#在文件中增加以下内容
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftproot
#保存并退出
sudo mkdir /tftproot
sudo chmod 777 /tftproot
/etc/init.d/openbsd-inetd restart
netstat -an | more | grep udp
#看到有如下输出,即表示tftp安装成功
#udp 0 0 0.0.0.0:69 0.0.0.0:*
补充库(root权限):
#在运行petalinux-config -c kernel出现错误,需要提前安装下面两个库
sudo apt-get install libncurses5 libncurses5-dev
#编译时会出现错误arm-xilinx-linux-gnueabi-gcc: Command not found,需要安装下面三个库
sudo apt-get install libc6:i386
sudo apt-get install libstdc++6:i386
sudo apt-get install zlib1g:i386
sudo apt-get install wget diffstat chrpath socat xterm autoconf libtool unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev
sudo apt-get install -y gcc git make net-tools libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev zlib1g:i386 screen pax gzip tofrodos iproute2 gawk xvfb vim tftp openbsd-inetd libc6:i386 libstdc++6:i386 zlib1g:i386
提示No tftp server found
https://www.cnblogs.com/vacajk/p/6146146.html
#在运行petalinux-config -c kernel出现错误,需要提前安装下面两个库
apt-get install libncurses5 libncurses5-dev
#编译时会出现错误arm-xilinx-linux-gnueabi-gcc: Command not found,需要安装下面三个库
apt-get install libc6:i386
apt-get install libstdc++6:i386
apt-get install zlib1g:i386
#安装petalinux时出现错误,提示缺少zlib和openssl,需要安装下面一个库
apt-get install libssl-dev
#安装petalinux时出现警告,提示No tftp server found - please refer to “PetaLinux SDK Installation Guide” for its impact and solution,需要安装下面3个库
apt-get install tftpd tftp openbsd-inetd
6.安装Petalinux
cd /opt/
sudo mkdir petalinux
sudo chown 用户名 petalinux //修改petalinux目录的所有者为普通用户
sudo chown 用户名 petalinux-v2016.4-final-installer1.run //将安装包拷贝到petalinux目录下,同样修改所有者权限为普通用户
$ ./petalinux-v2016.4-final-installer1.run .
注:
修改petalinux目录的所有者为普通用户
注意,这一步最容易出错,Petalinux的安装目录的所有者必须是普通用户,否则将无法安装过程中将会遇到各种问题
从Xilinx官网上下载petalinux-v2016.4-final-installer1.run,具体链接为https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools/2016-4.html
原文:https://blog.csdn.net/XJT2015/article/details/78762824
7.验证
source /opt/petalinux/settings.sh //先设置环境变量:
echo $PETALINUX //验证环境变量是否设置成功,执行:
若出现如下路径,则表示成功:
/opt/petalinux
//自己以普通用户模式下
gedit ~/.bashrc
//在末尾添加:
source /opt/petalinux/settings.sh
---------------------**
参考:
https://blog.csdn.net/u013457167/article/details/77914069
https://www.cnblogs.com/vacajk/p/6146146.html
https://blog.csdn.net/u013457167/article/details/77887705
https://blog.csdn.net/zhupingyang/article/details/80509199
https://www.cnblogs.com/likaiwei/p/10223354.html 创建工程
https://blog.csdn.net/XJT2015/article/details/78762824
PetaLinux reference board support packages (BSPs) 是受支持的电路板上的参考设计,
此外,这些设计可作为在受支持的电路板上创建自己的工程的基础使用。
BSP 参考设计未包含在 PetaLinux 工具安装程序中,需要单独下载和安装。
从 BSP 中创建工程:
petalinux-create -t project -s
如何向 PetaLinux 工程导出硬件平台。
HDF将在未来的版本中被弃用。它将被Xilinx支持归档(XSA)取代,XSA是Vivado®Design Suite 2019.2中引入的一种硬件描述格式。XSA是HDF的超级集合,它拥有可以通过XSCT/Vitis更改的附加配置。
配置好硬件项目后,PetaLinux项目需要一个硬件描述文件(XSA)包含有关处理器系统的信息。可以从 Vivado中运行导出硬件,获得硬件描述文件。
在项目初始化(或更新)时,PetaLinux生成一个设备树源文件、u -BOOT配置头文件,并基于硬件描述文件XSA启用Linux内核驱动程序。
petalinux-create
$ petalinux-create --type project --template --name
<PROJECT_NAME>
参数如下:
• --template - 支持下列平台类型:
○ zynqMP (UltraScale+™ MPSoC)
○ zynq (Zynq-7000 器件)
○ microblaze (MicroBlaze™ CPU)
注释: MicroBlaze 选项不得与 Zynq-7000 器件或可编程逻辑电路 (PL) 中的 Zynq UltraScale+ 设计配合使用。
• --name <PROJECT_NAME> - 您正在构建的工程名称。
该命令可从默认模板中创建新的 PetaLinux 工程文件夹。 以下步骤可自定义这些设置, 以便与以前创建的硬件工程匹
配。
如果使用了 --template 选项,而未使用 BSP, 您可以使用 petalinux-config 命令来选择与您的电路板设计接近
的默认电路板配置, 如下所示
$ petalinux-config --get-hw-description=<-path-to-directory-containinghardware description-file>
包含.xsa/.hdf 的路径
如果两个文件在硬件描述目录中均可用,则.xsa文件将优先于.hdf文件。
当 petalinux-config --get-hw-description , 会启动顶层系统配置菜单:
Subsystem AUTO Hardware Settings →” 菜单可自定义整个系统范围内的硬件设置。
petalinux-build
该步骤生成设备树 DTB 文件、 第一阶段引导加载程序(如果选定的话)、 U-Boot、 Linux 内核以及根文件系统镜像。 最后, 它生成必需的启动镜像。
在构建完成时,生成的镜像将位于 / images 和 /tftpboot 目录之内
运行petalinux-build时,它会为Zynq UltraScale+ MPSoC、Zynq-7000设备和MicroBlaze平台生成FIT镜像(FIT image,Flattened uImage Tree)。还会生成 RAM 磁盘镜像 rootfs.cpio.gz.u-boot
镜像 /images/linux/image.ub, 是一种 FIT 镜像。
内核镜像(包括 RootFS)是 Zynq® UltraScale+™ MPSoC 的“Image”。
构建镜像位于 <-plnx-proj-root>/images/linux 目录中。
如果想使用 uImage,请使用 petalinux-package --image。 例如:
$ petalinux-package --image -c kernel --format uImage
注释: 该选项仅支持 Zynq-7000 器件和 MicroBlaze™ 处理器。
如何为 Zynq UltraScale+ MPSoC 生成 BOOT.BIN
在执行此步骤之前, 要确保您已构建了硬件比特流。 启动镜像可放入闪存或 SD 卡。在您打开电路板的电源时, 它可从
启动镜像中启动。 启动镜像通常含有第一阶段引导加载程序、 FPGA 比特流(可选)、 PMU 固件、 ATF 和 U-Boot。
petalinux-package --boot --format BIN --fsbl images/linux/zynqmp_fsbl.elf --u-boot images/linux/u-boot.elf --pmufw images/linux/pmufw.elf --fpga images/linux/*.bit --force
较全面版本
petalinux-package --boot --format BIN --fsbl zynqmp_fsbl.elf --u-boot u-boot.elf --pmufw pmufw.elf --fpga system.bit --atf bl31.elf --force
or
petalinux-package --boot --fsbl images/linux/zynqmp_fsbl.elf --pmufw images/linux/pmufw.elf --atf images/linux/bl31.elf --fpga images/linux/system.bit --u-boot images/linux/u-boot.elf --force
INFO: File in BOOT BIN: “/home/weijie.wang/workplace/G_pulse/petalinux/GPulse/images/linux/zynqmp_fsbl.elf”
INFO: File in BOOT BIN: “/home/weijie.wang/workplace/G_pulse/petalinux/GPulse/images/linux/pmufw.elf”
INFO: File in BOOT BIN: “/home/weijie.wang/workplace/G_pulse/petalinux/GPulse/images/linux/system.bit”
INFO: File in BOOT BIN: “/home/weijie.wang/workplace/G_pulse/petalinux/GPulse/images/linux/bl31.elf”
INFO: File in BOOT BIN: “/home/weijie.wang/workplace/G_pulse/petalinux/GPulse/images/linux/u-boot.elf”
INFO: Generating zynqmp binary package BOOT.BIN…
$ petalinux-package --prebuilt --fpga
预建选项的启动级别
–prebuilt <BOOT_LEVEL> 启动预建镜像(覆盖所有设置)。受支持的启动级别为 1 至 3。
• 1 级: 下载预建 FPGA 比特流。
○ 它启动 Zynq® UltraScale+™ MPSoC 的 FSBL 和 PMU 固件。
• 2 级: 下载预建 FPGA 比特流并启动预建 U-Boot。
○ 对于 Zynq UltraScale+ MPSoC:它在启动 U-Boot 之前启动 PMU 固件、 FSBL 和 ATF。
• 3 级:
○ 对于 MicroBlaze™ 处理器: 下载预建 FPGA 比特流并启动目标上的预建内核镜像
预建选项启动级别用途的示例:
$ petalinux-boot --jtag --prebuilt 3
将以下文件从 /pre-built/linux/images/ 复制到 SD 卡中 FAT32 格式的第一分区根目
录中:
• BOOT.BIN
• image.ub
将电路板启动模式设定为 SD 启动
JTAG 启动与 XSDB 通信,而 XSDB 与 hw_server 通信。 所用的 TCP 端口是 3121;确保该端口的防火墙被禁用
在工作站上运行 petalinux-boot 命令, 如下所示:
$ petalinux-boot --jtag --prebuilt 3
自定义的 PetaLinux 工程可以通过 BSP 交付给下一个级别的团队或外部客户。
$ petalinux-package --bsp -p --output MY.BSP
附加 BSP 封装选项
$ petalinux-config
选择“Firmware Version Configuration ” 。
按要求选择主机名称、产品名称、固件版本以进行编辑。
petalinux-config
“Image Packaging Configuration → Root File System Type” 。
按要求选择 “INITRAMFS” /“INITRD” /“JFFS2” /“NFS” /“SD card” 。
注释: SD 启动功能预期将 RootFS 加载到 ext4 分区, 所有其他启动镜像加载到 FAT32 分区。
$ petalinux-config
Subsystem AUTO Hardware Settings → Advanced Bootable Images Storage Settings
• boot image settings (BOOT.BIN - FSBL, PMU 固件, ATF, U-Boot)
• “u-boot env partition settings”
• “kernel image settings” (image.ub - Linux 内核, DTB 和 RootFS)
• “jffs2 RootFS image settings”
• “DTB settings”
$ petalinux-config -c rootfs
$ petalinux-config -c kernel
Initial RAM disk (INITRD) 提供了在 PetaLinux 开机过程期间利用引导加载程序加载 RAM 磁盘的能力。
Linux内核将其挂载为RootFS并启动初始化过程。本节描述配置INITRD引导的过程。
重要提示! PetaLinux 的默认 RootFS 是 INITRAMFS。在 INITRD 模式下,内核镜像中不包含 RootFS。
In INITRAMFS mode, RootFS is included in the kernel image.
• Image → Image (kernel) + rootfs.cpio (for Zynq® UltraScale+™ MPSoC)
rootfs.cpio就是一个Linux内核空实例的磁带备份文件
用于启动 PetaLinux SD 卡 ext 文件系统的步骤:
为 SD 卡 ext 文件系统启动和构建系统镜像而配置 PetaLinux 的步骤如下:
将选项:Subsystem AUTO Hardware Settings -> Advanced bootable images storage Settings -> boot image settings 中 ‘image storage media’ 更改为 ‘primary sd’;
将选项:Subsystem AUTO Hardware Settings -> Advanced bootable images storage Settings -> kernel image settings 中 ‘image storage media’ 更改为 ‘primary sd’;
将选项:Subsystem AUTO Hardware Settings -> Advanced bootable images storage Settings -> dtb image settings 中 ‘image storage media’ 更改为 ‘primary sd’
将选项:Image Packaging Configurations 中 ‘Root filesystem type’ 更改为 ‘SD card’
本节简要介绍PetaLinux工程的文件和目录结构。构建的Linux系统由以下组件组成:
• Device tree
• First stage boot loader (optional)
• U-Boot
• Linux kernel
• RootFS is composed of the following components:
PetaLinux工程目录包含工程、Linux子系统和子系统组件的配置文件。petalinux-build命令使用这些配置文件构建项目。可以运行petalinux-config修改它们。下面是一个PetaLinux项目的例子
工程构建后, 将自动生成三个目录:
• <-plnx-proj-root>/build 用于构建生成的文件。
• <-plnx-proj-root>/images 用于可启动镜像
• /build/tmp 用于 Yocto 生成的文件。此目录可通过 petalinux-config 设置。
First Stage Boot Loader
默认情况下,顶层系统设置被设定为生成第一阶段启动加载器 (FSBL)。这是可选项
注释: 如果不希望 PetaLinux 构建 FSBL/FS-BOOT,则需要自己手动构建。否则, 系统将无法正常启动。
如果之前从 menuconfig 禁用了第一阶段启动加载器,则可以将工程设置为构建第一阶段启动加载器, 如下所示:
引导加载程序 ELF 文件将作为 zynqmp_fsbl.elf (Zynq® UltraScale+™ MPSoC)、 zynq_fsbl.elf
(Zynq®-7000 器件)和 fs-boot.elf(MicroBlaze™ 处理器) 安装在工程根目录内的 images/linux 中。
Arm 可信固件 (ATF)
此项用于 Zynq® UltraScale+™ MPSoC。
ATF ELF 文件将作为 Zynq UltraScale+ MPSoC 的 bl31.elf 安装在工程根目录内的 images/linux 中。
这仅用于 Zynq® UltraScale+™ MPSoC。这是可选项。默认情况下,顶层系统设置被设定为生成 PMU 固件。
PetaLinux 中的 FS-Boot 是仅用于 MicroBlaze™ 平台的第一阶段引导加载程序演示。其目的是演示如何从闪存向内存加
载镜像并跳转到其中。 如果要试用 FS-Boot, 至少需要 8 KB 区块 RAM。
FS-Boot 仅支持标准 SPI 模式和 Quad SPI 模式的并列式闪存和 SPI 闪存
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。