CAE: https://cae.jpl.nasa.gov
or
Xilinx: https://www.xilinx.com/support/download.html
docker build --tag=my-vivado-image .
docker run --name=my-vivado-container --user developer:root --shm-size=256m -e VNC_RESOLUTION=1920x1080 -it -p 5901:5901 -p 6901:6901 -v $(pwd)/proj/:/home/developer/proj my-vivado-image /bin/bash
docker run --name=my-vivado-container -it -e DISPLAY=docker.for.mac.host.internal:0 -v $(pwd)/proj/:/home/developer/proj my-vivado-image:latest /bin/bash
If container is not started start the container first:
docker container start my-vivado-container
Then enter to the container:
docker exec -it my-vivado-container bash
Note: Change the name of the tar file based on your downloaded file
tar zxf Xilinx_Vivado_SDK_2018.3_1207_2324.tar.gz
./Xilinx_Vivado_SDK_2018.3_1207_2324/xsetup --agree 3rdPartyEULA,WebTalkTerms,XilinxEULA --batch Install --config installation_config.txt
echo "source /home/developer/proj/tools/Xilinx/Vivado/2018.3/settings64.sh" >> /home/developer/.bashrc
cp /path/to/your/licence/Xilinx.lic /home/developer/.Xilinx/
Note: The VNC image is based on consol/ubuntu-xfce-vnc (see https://hub.docker.com/r/consol/ubuntu-xfce-vnc for more info)
If the container is started as VNC stated above, connect via one of these options:
- connect via VNC viewer localhost:5901, default password: vncpassword
- connect via noVNC HTML5 full client: http://localhost:6901/vnc.html, default password: vncpassword
- connect via noVNC HTML5 lite client: http://localhost:6901/?password=vncpassword
Note: X11 might be slow and not responsive when running Vivado
$ brew install socat
$ brew cask reinstall xquartz
On a new terminal, verify if there's anything running on port 6000
$ lsof -i TCP:6000
If there is anything, just kill the process
$ socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"
$ lsof -i TCP:6000
defaults write org.x.X11 enable_test_extensions -boolean true
defaults write org.macosforge.xquartz.X11 enable_test_extensions -boolean true
defaults write org.macosforge.xquartz.X11 startx_script -string "/opt/X11/bin/startx -- /opt/X11/bin/Xquartz"
defaults write org.macosforge.xquartz.X11 enable_iglx -bool true
Note: Make sure the output look like the following:
$ defaults read org.x.X11
{
"enable_test_extensions" = 1;
}
$ defaults read org.macosforge.xquartz.X11
{
...
"enable_test_extensions" = 1;
"startx_script" = "/opt/X11/bin/startx -- /opt/X11/bin/Xquartz";
}
To start the X window manager run the following:
startx
If everything is OK you can start Vivado from the comand line by:
Vivado
docker container stop my-vivado-container
docker container rm my-vivado-container
docker image rm my-vivado-image
find . -name '.DS_Store' -type f -delete