최근의 Xilinx tools 는 Software platform인 Vitis(바이티스) 와,
hardware platform인 Vivado(비바도)로 구성되어 있습니다.
WSL2(WSLg) 에 Ubuntu-22.04 설치된 후, Vitis 가 포함된, 최근의 Xilinx tools 을
설치하기 위한 글입니다. (2023.1, 3021.1 버전)
설치를 위한 이전의 블로그 페이지는 다음과 같습니다.
WSL2 설치는
https://mtrxlife.blogspot.com/2023/07/wsl2-2023624.html
Ubuntu-22.04 설치는
https://mtrxlife.blogspot.com/2023/07/wsl2-wsl-ubuntu-linux.html
WSL의 기초적 사용법은
https://mtrxlife.blogspot.com/2023/07/wsl-ubuntu-ubuntu-2204.html
빠른 Ubuntu local repository 변경은
https://mtrxlife.blogspot.com/2023/07/ubuntu-apt-repository-package-mirror.html
또한 2018.3 버전 설치도 있으니, 본 블로그 wsl 카테고리에서 관련 글을 참고바랍니다.
추천하는 설치 방식과 이유는 다음과 같습니다.
1. internet 환경 문제 말고는, Network Install ( Web Installer ) 로 설치하자.
Vitis 가 포함된 최근 버전들은, 용량이 점점 커져서, 2023.1은 110G 가 넘습니다.
Full Product Installation file ( Unified , SFD - Single File Download ) 를 받고,
설치하기 위해 압축을 푸는 시간이 필요하고, 또 디스크 용량을 차지합니다.
그리고 용량의 절반 이상이, device family 지원용 data 이므로,
사용/개발 할 Xilinx device family 외에는 disk 공간 낭비입니다.
버전별 설치용 압축파일 크기 참고, update들은, 대부분, device 추가입니다.
2023.1.1 : 25.84G ( update )
2023.1 : 110.85G
2022.2.2 : 18.88G ( update )
2022.2.1 : 8.65G ( update )
2022.2 : 89.4G
2022.1.2 : 56.25G ( update )
2022.1.1 : 52.77G ( update )
2022.1 : 73.81G
2021.2.1 : 36.98G ( update )
2021.2 : 71.9G
2021.1.1 : 20.33G ( update )
2. full product install file 로 설치시, Ubuntu File System에 풀고 설치하자.
버전이 높을 수록, 용량이 큽니다. 압축을 풀어야 하니 2배 공간이 필요합니다.
Xilinx tools 의 특정 버전을 써야 할 사유가 없는 경우,
사용하려는 Xilinx device가 지원되는, 최소 버전을 설치 사용하시기 바랍니다.
Xilinx Tools의 상위,하위 버전의 차이는, 지원하는 device 차이가 제일 큽니다.
errata , release note 등의 문서에서 특별한 내용이 없다면, 낮은 버전도 무방합니다.
WSL 에서는 다음의 단점이 있습니다.
OS file system 간 성능 ( Performance across OS file systems ) 이 좋지 않습니다.
NTFS 와 EXT4 간의 변환 과 소유자, 권한 등의 처리가 있기 때문입니다.
특히, WSL1 보다, WSL2 가 더 안 좋습니다.
MS 의 WSL1, WSL2 비교 정보 에서, OS간 (HOST-window 와 Guest-Ubuntu) 의
file io 를 빠르게 처리하려면, WSL1 을 사용할 것을 권고하고 있습니다.
위의 사유로, 가능하면, Ubuntu file system에 설치파일을 풀고 실행해야 빠릅니다.
한가지 단점은, WSL linux의 가상 disk (vhdx) 가 커지게 됩니다.
설치용 file을 지워도, 가상 disk 크기는 줄지 않습니다.
기본 크기 2T의 동적 disk인, 이 vhdx 크기를 줄이려면,
별도의 과정이 필요하고, 또 시간이 많이 걸릴 수 있습니다.
이와 관련하여, wsl의 import, export, vhdx backup, restore, compact 등은
따로 정리하여 올릴 예정입니다.
설치 진행 과정은 다음과 같습니다.
1. Ubuntu (22.04) 에서, Vivado/Vitis 설치에 필요한 library/package 를 설치합니다.
Ubuntu terminal 에서 다음과 같이 입력해 줍니다.
sudo apt install libxtst6 libxi6 sudo apt install x11-apps make
위의 library/package들이 없으면, Xilinx installer 가 실행되지 않습니다.
또한, Vivado/Vitis 실행에 문제가 생깁니다.
그리고, 아래와 같이 locale설치와 설정을 해 줍니다.
locale 설정을 하지 않으면, Xilinx installer 끝무렵에 다음의 warning이 나옵니다.
sudo apt install locales sudo locale-gen en_US.UTF-8
WSL에 설치된 ubuntu-22.04 에서는 locales가 설치되어 있어,
첫번째 line은 필요 없는 부분이나, 타 배포판의 참고용으로 넣은 명령입니다.
두번째 line 은 locale 설정 명령이며, Ubuntu-22.04 에서 해 주어야 합니다.
추가적으로 한글 locale 팩을 설치하려면, 아래를 실행합니다.
sudo apt install language-pack-ko
2. Xilinx Download site 에서 필요한 Installer file을 받고, 실행합니다.
Xilinx 에 계정이 필요합니다. 없으면 본인의 메일로 만드세요.
아래의 예제는, 2021.1 버전의 경우입니다.
Unified Installer ( SingleFileDownload ) 는, 다음과 같이 압축을 풀고, 실행하세요
tar -xzvf <unified installer SFD file> -C <target dir> cd <target dir>/Xilinx_Unified_2021.1_0610_2318 sudo ./xsetup
2023.1 버전의 경우는, Xilinx_Unified_2023.1_0507_1903 directory입니다.
2023.1 버전 Web Installer 로 설치할 경우를 예로 들자면,
download 후, Ubuntu terminal에서 아래와 같이 실행하면 됩니다.
cd <download directory> sudo ./Xilinx_Unified_2023.1_0507_1903_Lin64.bin
다른 버전의 web installer 인 경우, 해당하는 파일 이름으로, sudo로 실행하세요.
3. 다음은 실행과정 입니다.
설치 준비가 끝나면 나오는 welcome 및 안내입니다.
최신의 버전보다 낮으면, latest 버전을 받을 것인지 묻는 창이 나오지만,
2023.1이 현재 최신 버전이므로, get latest 창이 나오지 않았습니다.
참고로, 위의 안내에 나오듯, peta-linux는 Ubuntu만 지원합니다.
아래쪽의 Download Image 는, 모든 (개별) 설치 파일을 download하는 옵션입니다.
Web Installer 의 장점이자 목적에 해당하는, ( 필요한 device와 tools 만 받고 설치 )
Download and Install Now 를 (당연히) 선택하고 진행합니다.
맨위 첫번째 항목 vitis는 모든 tool의 설치 입니다. 즉 vivado 포함입니다.
참고: vitis tool은 OpenSource 들로 구성된 software platform입니다.
따라서 xilinx license를 요구하지 않습니다.
그렇지만, vivado는 특정 부분에서 xilinx license 가 필요합니다.
2번째 항목 vivado는 vitis tool을 빼고, 설치합니다. 즉 hardware platform 설치입니다
대다수 사용자( hardware, software개발 )의 경우, vitis 를 선택하면 됩니다.
또한, 나중에, 설치 프로그램을 통해, 필요한 부분의 추가가 가능하기 때문에,
부담없이 선택하고 설치하면 됩니다.
다음은, vitis 항목으로 선택후 나오는 화면입니다.
아래는, vivado 항목 선택후, 다시 ML enterprise 선택후의 진행화면입니다.
위의 과정에서, 필요한 device/family를 선택한 후, Next> 진행하면
다음의 license agreement 화면이 나옵니다.
모두 check 하여야 Next> 로, 진행할 수 있습니다.
다음은, 설치 directory 지정 화면입니다.
우측의 Desktop 설정 부분은, 기본 desktop이 없는, WSL2 환경에서는 의미 없습니다.
물론, sudo 로 실행하므로, /root 에 만들어 집니다. 그대로 놔 두도록 합니다.
위 화면 중앙의 message창은, Next> 를 눌렀을 때 나오는 창으로,
설치될 /tools/Xilinx directory가 없어서 나온 것이며, Yes 를 눌러, 다음으로 진행합니다.
설치 선택사항을 확인/수정하려면, <Back 을 눌러, 이전으로 이동하면 됩니다.
다음화면은, 설치 시작 직후 입니다.
locale 설정을 하지 않은 경우, Xilinx installer 끝무렵에 다음의 warning이 나옵니다.
다음화면은, 설치 완료후 화면입니다.추가 download, update 등이 나오는데, 설치하려면, Install누르고, 아니면,
Dismiss 누르면 됩니다.
아래는, XIC 의 Manage install 탭 입니다.
여기서, 다시 install program으로 진입하여, 위의 설치 과정을 다시 할 수 있습니다.
xic 실행은, sudo /tools/Xilinx/xic/xic 로 할 수도 있습니다.
위의 과정으로 Xilinx tools 2023.1은 설치 완료입니다.
아래의 과정은, Xilinx Vitis/Vivado 설치후, 실행에 필요한 부분들입니다.
1. 사용하려는 evaluation board의 support file 설치
Xilinx tools 설치시, 선택한 device 의 기본 evaluation board 들은 같이 설치됩니다.
설치되지 않았다면, 따로 설치해야 합니다. ( 특히 3th party board 들 )
evaluation board 로 학습/개발 하지 않는다면, 생략해도 됩니다.
먼저 https://github.com/Xilinx/XilinxBoardStore 에서
필요한 board file의 경로를 확인합니다.
avnet의 minized board 경로는, /boards/Avnet/minized/ 입니다.
Ubuntu terminal 에서 아래의 과정을 실행합니다.
cd /tools/Xilinx/Vivado/2023.1/data/xhub/boards/XilinxBoardStore sudo git init sudo git sparse-checkout init sudo git sparse-checkout set "/boards/Avnet/minized/" sudo git sparse-checkout list sudo git remote add board https://github.com/Xilinx/XilinxBoardStore.git sudo git pull board master sudo rm -rf .git
위의 과정은, git 명령을 통하여, boards/Avnet/minized 를 가져오는 과정입니다.
맨 위는, Board Store 로 이동하는 과정입니다.
그 후, git 저장소 초기화한 후, boards/Avnet/minized 만 가져오게 합니다.
중간의 sudo git sparse-checkout list 는, 가져올 directory를 확인하는 명령입니다.
맨 마지막은, git 저장소 설정과 cache를 지우는 부분입니다.
참고로, sparse-checkout 이 포함된 부분을 생략하면,
모든 board file을 가져 올 수도 있습니다.
2. 실행에 필요한 package 설치
sudo apt install gcc libgtk-3-0
gcc 는 vivado simulation 에 필요합니다.
sudo apt install libgl1-mesa-dri x11-utils sudo apt install gnome-session
위의 package 들은, (주로) vitis 실행시 필요한 package들 입니다.
vivado만 실행시, 위 package들은 없어도 되는 것 같습니다.
그리고, gnome-session 의 크기는 800M 정도 차지하며,
또한, gnome-session 설치시, WSL Ubuntu를 재시작해야 합니다.
gnome-session이 없어도 실행은 가능해 보이나, GUI 관련 warning 들과
창의 위치/크기 같은, UI 설정값 문제들이 생깁니다.
** 참고, x11-utils 를 설치하면, installer 나 vivado, vitis 실행시 나오는
3. library 연결 및 복사
Xilinx tools 2023.1 버전은, Ubuntu 22.04 이전의 desktop 버전에 맞춰져 있습니다.
그래서 몇가지 수정할 부분이 있습니다.
sudo mkdir /usr/lib/dri sudo ln -s /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so /usr/lib/dri/ cd /tools/Xilinx/Vitis/2023.1/lib/lnx64.o/Ubuntu sudo cp libstdc++.so.6 libstdc++.so.6.bak sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 . cd /tools/Xilinx/Vivado/2023.1/lib/lnx64.o/Ubuntu sudo cp libstdc++.so.6 libstdc++.so.6.bak sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 .
위의 과정들은, swrast_dri.so 의 symbolic link를 만들어주고
Vitis, Vivado 의 개별 library 위치의 libstdc++6 의 버전을
Ubuntu-22.04 사용버전으로 대치해 줍니다.
4. Cable Driver (USB jtag) 설치
Xilinx tools linux 버전은, installer 에서 usb cable driver가 설치 되지 않습니다.
다음을 실행하여, driver 를 설치합니다.
cd /tools/Xilinx/Vivado/2023.1/data/xicom/cable_drivers/lin64/install_script/install_drivers sudo ./install_drivers
설치후, usb jtag 사용은 아래 link를 참고하세요
5. vivado / vitis 실행하기
vivado 실행은 다음과 같습니다.
export SWT_GTK3=0 source /tools/Xilinx/Vivado/2023.1/settings64.sh vivado &
vitis 실행은 다음과 같습니다.
export SWT_GTK3=0 source /tools/Xilinx/Vitis/2023.1/settings64.sh vitis &
위의 코드에 사용된 settings64.sh 는 모두 같습니다.
어느 것이든 Ubuntu terminal에서, 한번만 실행되면 됩니다.
맨 위 SWT_GTK3 설정이 없으면, Vitis 에서, 일부 message 창이 보이지 않습니다.
예를 들면, Vitis 첫 실행시, 아래의 update message 창이 실행됩니다.
( task switching 시, 썸네일만 겨우 볼 수 있습니다. )
아래는 vivado 첫 실행화면입니다.
맺음말
다른 버전을 설치하는 경우, 각 directory, file name 을 맞춰야 합니다.
2021.1 버전도, 설치와 동작 확인 했습니다.
2021.1 에서는, swrast_dri.so 와 libstdc++.so.6 문제는, 발생하지 않는 것 같습니다.
package 설치 순서나, Xilinx 설치 순서에 따라 그런 것인지 확인이 어렵네요
설치문제나, vivado 실행시, 문제가 있는 부분은 댓글을 달아주시기 바랍니다.
Xilinx tools 는, 지원하는 배포판( Ubuntu 등) 의, Linux OS 환경 및 desktop 에
설치, 사용할 것을 전제로 하고 있습니다.
최근의 Xilinx tools 버전은, Desktop 환경에 종속적입니다.
실제로, Vitis 실행시, cursor theme 관련 warning 이 나옵니다.
물론, 실행 및 사용에 문제는 거의 없습니다.
이것을 제대로, 완벽히 해결하려면, Ubuntu Desktop을 설치해야 합니다.
그런데, 이 ubuntu desktop은, 용량이 10G 정도이고,
간단히 apt install ubuntu-desktop 만으로 설치되지 않으며,
설치 하였다 해도, 여러가지 설정을 바꾸고 추가해 줘야,
비로소, 익히 보던 Ubuntu Desktop 대로, 사용할 수 있습니다.
linux desktop을 native WSL2(WSLg) 로 띄우는 방법과 xdmcp 설정법은
차후에 내용정리하여 블로그에 포스트 예정입니다.
















0 댓글