Installing Quartus 18.1 on Linux Mint 19.2


Introduction

Below steps are described to solve some trouble during and after installation of Quartus Prime Standard Edition (version 18.1.0.625) on Linux Mint 19.2 (kernel 4.15, 64-bit).

Some references before we start:

Pre-installation setup

The certain environment variables, which are given in the installation instructions Installing Quartus on Ubuntu 14.04, should be set in .bashrc or .profile file in your home directory. Ensure that the proper paths are given to the environment variables. For example if Quartus is installed in the "/opt/quartus18" directory, then QUARTUS_ROOTDIR must have below value:
QUARTUS_ROOTDIR=/opt/quartus18/quartus

Otherwise, Quartus cannot start and returns an error about missing some files such as "/adm/qenvset.sh: No such file or directory".

Download & Configuration

  • Download Quartus 18.1.0.625 from Intel website (Quartus-18.1.0.625-linux-complete.tar from ???)
  • Once your Quartus has downloaded, untar the archive and run the setup.sh script in the downloaded files-
mkdir quartus/
cd quartus/
mv <download folder>/Quartus-18.1.0.625-linux-complete.tar quartus/
tar xvf Quartus-18.1.0.625-linux-complete.tar
export QUARTUS_ROOTDIR="/opt/quartus18/quartus"
export QUARTUS_64BIT=1
sudo mkdir /opt/quartus18
  • Add the following lines to your .bashrc (and possibly others, if you use the Nios-II IDE):
export QUARTUS_ROOTDIR="/opt/quartus18/quartus"
export QUARTUS_ROOTDIR_OVERRIDE="/opt/quartus18"
export QUARTUS_64BIT=1

or add these variables to ~/.profile.

Installation

Start the installation from the CLI with sudo bash ./setup.sh.

  • Accept the license agreement as usual.
  • Specify the installation directory to /opt/quartus18.
  • Select following components from the components list:
    • Quartus Prime Standard Edition (all except Help), Devices: only Arria V and Arria II needed for first start)
    • ModelSim-Altera Starter Edition (free)

Once the installation is completed and GUI hangs with a window saying "Installation completed", then terminate the installation either from the CLI (CTRL+C) or from the installation GUI.

  • Make a link to the quartus executable so you can run it from the command-line (the following assumes you installed Quartus in $QUARTUS_ROOTDIR):
sudo ln -s $QUARTUS_ROOTDIR/bin/quartus /bin/quartus
  • You should now be ready to run Quartus. You will need to register a license for your software.

Licensing

For full functionality of Quartus you need a license. This is provided by Intel. It takes some time to get the license for the first time. You need to register for an account for the Intel FPGA forums. Don't use too complex passwords. Special characters may disturb the login-page. After successful login (sign in), someone from the timing team has to assign a license to you. To activate a fixed license you have to connect the license with your machine (this needs computer name and MAC-address). The license key is sent as a file py email.

Post-installation fixes

Issue: libstdc++.so

It's already known that the libstdc++ shared library included in the Quartus 18.1 installation is not compatible with Ubuntu 18.04 / Mint 19.2. The failure message looks like:
$QUARTUS_ROOTDIR/quartus/linux64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/lib/x86_64-linux-gnu/libproxy.so.1)
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so

or a message similar to
</opt/quartus18/quartus/linux64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/firefox/firefox)

Therefore, if starting Quartus causes such module load failures, then one can rename libstdc++.so.6 such that the default version (currently /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25) of this library is loaded.
cd $QUARTUS_ROOTDIR/linux64
sudo mv -vf libstdc++.so.6 libstdc++.so.6.orig

Issue: libpng12.so

Error message:
error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory

Problem:

libpng12 is no longer available in the Ubuntu repository archives and as a result, some applications that were not built with the newer libpng (libpng16) library fail to install.

Fix:

Modify/add this entry to /etc/apt/sources.list: deb http://security.ubuntu.com/ubuntu xenial-security main

sudo apt-get update
sudo apt-get install libpng12-0

See https://www.linuxuprising.com/2018/05/fix-libpng12-0-missing-in-ubuntu-1804.html

Installing the USB Blaster

This is actually the biggest challenge of them all. The website also mentioned at the beginning is the reference for installing the USB blaster, so if you want the bigger picture and a longer description, go to this website:

This page just shows a list of steps that I've done to make the cables work.
  • Create the file /etc/udev/rules.d/51-altera-usbblaster.rules
  • Adding these lines to the file will add support for both USB-Blaster-I and II
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6002", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6003", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6010", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6810", MODE="0666"
  • Restart your PC (I've found sudo udevadm control --reload didn't work in my case)
  • Run jtagconfig to test the chain (again, assuming Quartus install dir as $QUARTUS_ROOTDIR)
$ $QUARTUS_ROOTDIR/bin/jtagconfig
1) USB-Blaster [3-2]
  02A010DD   5AG(TMC3D3|XBA3D4|XBA3D6)

In case you see this error message,

$ $QUARTUS_ROOTDIR/bin/jtagconfig
1) USB-Blaster [3-2]
  Unable to read device chain - JTAG chain broken

your USB Blaster works, but you can't to connect to the JTAG chain. A possible cause can be a missing 32 Bit version of libudev.

  • Download libudev1:i368 and create a symbolic link
$ sudo apt-get install libudev1:i386
$ sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0

-- MartinSkorsky - 1 Nov 2019

This topic: Timing > WebHome > TimingSystemDocumentation > TimingSystemHowTo > Quartus16InstallMint191
Topic revision: 01 Nov 2019, MartinSkorsky
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback