Ubuntu 20.04 安装配置 及 ZYNQMP开发环境搭建
一、磁盘文件选单个文件
磁盘文件选单个文件,否则文件数量比较多,不利于分发和管理,也不利于后期磁盘扩容,踩坑过:后期磁盘扩容 虚拟机拆成多份文件扩容很麻烦很麻烦!所以我这里设置大一点,反正是虚拟机用多少存储内存,物理机内存才耗多少,视情况而定。
二、安装界面显示不全
解决方案:
alt+鼠标左键 或者 win+鼠标左键拖动
三、安装类型
直接点击“现在安装”,自动分区为 / 和 /boot/efi
四、VMware-tools安装失败
解决办法:
sudo apt-get install open-vm-tools-desktop
使用 open-vm-tools 的共享文件夹
Ubuntu18.04 使用open-vm-tools 替代vmware-tools
五、更换软件源
五、安装开发环境
sudo apt install make gcc vim net-tools
六、开机自动挂载硬盘
ubuntu20.04 开机自动磁盘挂载 /etc/fstab
七、Xilinx Vitis安装
1. 安装缺少的库
sudo apt-get install libtinfo5 libncurses5
2. 运行安装程序
sudo ./xsetup
3. 问题及解决
(1) libstdc++.so.6: file too short
Xilinx_Unified_2020.2_1118_1232/lib/lnx64.o/Ubuntu/libstdc++.so.6: file too short
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so
原因: 安装包在windows下共享文件夹中解压的,可能导致共享库出现问题
解决: 使用linux中共享库替换
查找 libstdc++.so.6 位置
grep -r "libstdc++.so.6" /usr/lib/
复制 libstdc++.so.6 到 Vitis 安装目录
sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 ./lib/lnx64.o/Ubuntu/
(2) 卡在 “Generating installed device list”
原因: 缺少 libncurses5 或 libtinfo.so.5 库
解决:
sudo apt-get install libtinfo5
sudo apt install libncurses5
再重新开始安装一次
4. 使用 Vivado 和 Vitis
source /tools/Xilinx/Vivado/2020.2/settings64.sh
vivado
source /tools/Xilinx/Vitis/2020.2/settings64.sh
vitis
5. Vivado改变工作目录
一般情况下Vivado的目录为C:/Users/xxx/AppData/Roaming/Xilinx/Vivado,可以通过TCL命令将其改变为当前工程的目录:
查看当前工作目录
pwd
设置当前路径为工作目录
cd [get_property directory [current_project]]
八、Xilinx Petalinux安装
参考:ubuntu-20.04.1安装petalinux-2021.2,一次成功(´▽`)ノ
1. 安装所需库
sudo apt-get install iproute2 gawk python3 python build-essential gcc git make net-tools libncurses5-dev tftp-hpa tftpd-hpa zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget git-core diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib automake zlib1g:i386 screen pax gzip cpio python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3
2. 创建安装目录
修改指定目录所有者
sudo chown xxx:xxx /tools
创建安装目录
mkdir -p /tools/Petalinux/2020.2.2
3. 安装petalinux到指定目录
注意:不能加 sudo
./petalinux-v2020.2.2-final-installer.run --dir /tools/Petalinux/2020.2.2
4. 创建petalinux启动脚本
创建 petalinux.sh 文件,写入
#!/bin/bash
source /tools/Petalinux/2020.2.2/settings.sh
5. 问题及解决
(1) bash问题
WARNING: /bin/sh is not bash!
解决:
sudo dpkg-reconfigure dash
选择 否
(2) tftp问题
WARNING: No tftp server found
解决:Ubuntu 环境搭建系列–ubuntu20.04 tftp服务搭建
(3) 缺 libtinfo5 库
报错:
error loading hsi package: couldn't load file "libxv_commontasks.so": libtinfo.so.5: cannot open shared object file: No such file or directory
解决:
sudo apt install libtinfo5
6. 设置使用local sstate,加速工程编译
Petalinux:Yocto Settings设置使用local sstate,加速工程编译
VIVADO开发笔记:在PetaLinux中配置本地高速缓存sstate-cache以加速工程编译
报错:ERROR: qemu-xilinx-native-v5.1.0-xilinx-v2020.2+gitAUTOINC+7e3e3ae09a-r0 do_fetch
Unable to build PetaLinux 2020.2 with BB_NO_NETWORK
原因:Linux内核版本不匹配
查看目录:sstate_aarch64_2020.2.2-k26/aarch64/universal-4.8 ,说明该sstate_aarch64支持内核版本为4.8,使用其他版本可能会出现异常。
解决:
- 更换Linux 系统版本,适配 sstate_aarch64 支持的内核版本。
- 先不设置 local sstate ,直接编译。将项目目录下生成的 build/sstate-cache/ubuntu-20.04 目录复制到下载的sstate_aarch64目录中。再进行 local sstate 配置。