Install vivado on manjaro or arch linux

  • Vivado
  • Manjaro
  • Arch
  • Xilinx

posted on 02 Feb 2017

Install Dependencies

We need to install a few dependencies before installing the Vivado package. Some of these packages will be found in AUR repositories. For this installation, mostly for demonstration purposes, I will use as many GUI versions of tools to help out non-Linux experts like myself. The first packages we will install are easily found in the Manjaro package installer:

  • seahorse
  • lib32-libpng12
  • yaourt-manjaro-gui. Click apply. If prompted, type your password and press ‘commit’.

Installing ncurses5

We’re going to install the ncurses library using the Yaourt GUI that we just installed. Clicking on Yaoart-Gui in the applications opens a terminal.

  • Type 9 and ENTER to ‘Search and Install’
  • For “Which packages do you want search and install?”, type ncurses5-compat-libs.
  • I was given two choices: lib32-ncurses5-compat-libs and ncurses5-compat-libs.
  • I am running a 64-bit system, so I shyed away from the lib32 option, and selected option 2 and pressed ENTER.

As with any package in yaourt, you’ll be prompted:

ncurses5-compat-libs 6.0+20161224-1  (2016-12-26 22:55)
( Unsupported package: Potentially dangerous ! )
==> Edit PKGBUILD ? [Y/n] ("A" to abort)

You should choose ‘Y’ and when prompted:

==> Edit PKGBUILD with:

type ‘mousepad’ and ENTER.

One should take a few minutes and try to read every line in this file. Pay particular attention to the ‘validpgpkeys’ line (around line 20):

validpgpkeys=('C52048C0C0748FEE227D47A2702353E0F7E48EDB')  # Thomas Dickey

We’re now going to open up the Seahorse application to import Thomas Dickey’s remote key. It is listed as ‘Passwords and Keys’ in your application menu:


Click on the ‘Remote’ dropdown menu and choose, ‘Find Remote Keys’:

Refering to the comment after the ‘validpgpkeys’ line I noted above, we’re going to type ‘Thomas Dickey’ and click ‘Search’.

I selected the first ‘invisible-island’ choice after verifying the key’s fingerprint (right-click on properties and compare it the key in the PKGBUILD file). Click the ‘Import’ button to import the key.

The import process can take a little while, but the key should show up in the ‘Passwords and Keys’ window in a minute or two. You might have to click on ‘GnuPG key’s on the left sidebar to see your keys. It should look something like this when the import is finished:


Now go back to the PKGBUILD script that we asked to edit. We are not going to edit it. Just close it.

In the yaoart-manjaro-gui terminal, you will see that we are asked:

==> Continue building ncurses5-compat-libs ? [Y/n]

Type ‘Y’

After a few minutes of magic, you’ll be prompted to type your password. Type in your password, and then continue installing.

I downloaded the big ~20 GB file from Xilinx and uncompressed it to my /home/Public directory. It should not matter where it is uncompressed to as long as you know how to get to it.

Setting Permission for your Installation Folder

Before installing, I am going to change the permissions on my /opt/ directory so that we can install Vivado there.

Open up your Terminal Emulator and navigate to where your uncompressed Xilinx installation package is. I uncompressed mine into my /home/Public/ directory

cd Public/Xilinx_Vivado_SDK_2016.4_0124_1

Now change the setup file to make in executable

sudo chmod +x /home/Public/Xilinx_Vivado_SDK_2016.4_0124_1/xsetup
sudo chmod +x /home/ryan/Public/Xilinx_Vivado_SDK_2016.4_0124_1/tps/lnx64/jre/bin/java

Change the permissions for the directory for which you will install Vivado. I will be installing Vivado into the /opt/ directory.

sudo chmod -R 777 /opt/

You should change this back once the installation is complete.

Once downloaded and unpacked the tarball, the install script must be patched to be able to properly detect the machine architecture. You can do it by going to the directory where installer is extracted and running:

$ sed -i.original 's/uname -i/uname -m/' xsetup

Now we are finally ready to run the install script.

Install Vivado WebPACK

To run the installation script. Run with the sudo

sudo ./xsetup
  • At the welcome screen click next.
  • Agree to everything and click ‘Next’
  • Choose Vivado HL WebPACK and click ‘Next’


Check the box for ‘Software Development Kit (SDK)’ and click next.


In the Select Destination Directory you should not change anything. If the /opt/Xilinx is in red, that means you did not change the permissions correctly. If /opt/Xilinx is shown in black you’re okay. Click Next, and then ‘Yes’ to create the directory.


Click ‘Yes’ to create the directory if it does not exist.


My installation summary looked like this before I clicked ‘Install’


After 43 minutes on my old laptop a successful installation message came up.


The license manager appears. I am just using the WebPACK with my Zybo Zynq-7000 which is node-locked, and I will just exit out of the License Manager.

I had success, but I still need to do a few things.

  • Install Cable Drivers.
sudo ./install_drivers

Make a new file named:


Write this into the file, then save and make it executable:

#!/usr/bin/env xdg-open
[Desktop Entry]
Name=Xilinx Vivado IDE
Exec=sh -c "unset LANG && unset QT_PLUGIN_PATH && source /opt/Xilinx/Vivado/2016.4/ && vivado"
Comment=Vivado Integrated Development Environment

Make a new file named:


Write this into the file, then save and make it executable:

#!/usr/bin/env xdg-open
[Desktop Entry]
Name=Xilinx SDK
Exec=sh -c "unset LANG && unset QT_PLUGIN_PATH && source /opt/Xilinx/SDK/2016.4/ && xsdk"
Comment=Xilinx Software Development Kit

Make a new file named:


Write this into the file, then save and make it executable:

#!/usr/bin/env xdg-open
[Desktop Entry]
Name=Xilinx Documentation Navigator
Exec=sh -c "/opt/Xilinx/DocNav/docnav"
Comment=Xilinx Documentation Navigator

Open the Harware Manager to verify that Vivado can see my Zybo. I plugged my Zybo in, turned it on and clicked on the ‘Open target’ link.

Successful connection.