macOS Ventura supports running x86-64 binaries on Linux VMs. However, even with Rosetta installing Vivado is not a simple one-click process. This guide covers some workarounds and tricks to get Vivado up and running on ARM64 Mac.
- Make sure you're running macOS Ventura or higher.
- Install UTM and create a Debian VM with Rosetta according to their guide.
- Other distributions should also work, but commands will be different.
- Install x86-64 version of java and
libtinfo
. Vivado depends on them.
$ sudo apt install default-jdk:amd64 libtinfo5:amd64
- Download a copy of self-extracting web installer from Xilinx website.
- Run the installer with
--confirm
flag.
$ /path/to/vivado/installer --confirm
- The installer will print something like
About to extract 40 KB in /tmp/selfgzXXXX ... Proceed ?
. Check the path/tmp/selfgzXXXX
, and proceed. - After extracting, the installer will ask about running
./xsetup
. Before pressingy
, open/tmp/selfgzXXXX/xsetup
in your editor and delete architecture checking code which looks like this:
# ERROR out if this installation is running on 32 bit OS
# and does not support 32 bit installation
if [ "$(uname -m)" != "x86_64" ]; then
...
fi
- Save the file and press
y
in the installer. Continue with installation as usual. - Patch the
loader
. Open/path/to/xilinx/Vivado/2022.2/bin/loader
in your editor, where/path/to/xilinx
is the path to Xilinx software suite installation. Remove architecture checking code as you did on step 6.
Hi,
I'm trying to follow the procedure, but during the installation, after step 6, I get the following error message:
OK to execute: ./xsetup ? [Y/n] y
This is a fresh install.
INFO Could not detect the display scale (hDPI).
If you are using a high resolution monitor, you can set the insaller scale factor like this:
export XINSTALLER_SCALE=2
setenv XINSTALLER_SCALE 2
./xsetup: riga 100: /tmp/selfgz10857/tps/lnx64/jre17.0.7_7/bin/java: cannot execute binary file
What could I do? Thanks for helping!
Michele Agosti