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:
- This page is based on these pages online:
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