Engineering. Software.

Hardware. And more.

Taming the Altera/Intel FPGA Development Tools on Linux: Setup

In this post I'll help you get everything running accordingly so you can start working on your project. This includes how to set the right Quartus' environment variables and how to run each of the main programs included on the suite: Quartus Prime, ModelSim and Eclipse with Nios 2 Support.


Let’s begin with the setup of the Quartus installation and Linux environment since even that is somewhat confusing. On Linux, you need add some environment variables to the system to use either command line or GUI tools. If you’re using the Quartus on Windows, you only need this if you’re planning on using the command line tools.

Download the Suite

First, download the latest version of the Quartus suite that supports the device you’ll be working on. Even though Altera has been bought and was rebranded as Intel FPGA for quite some time now, the download center is still at: https://www.altera.com/downloads/download-center.html As of the writing of this post, the latest version of the Quartus software is 18.0 and that is the one used throughout all this series. Keep in mind that some features might work differently on other versions. In addition, everything in this series was done under Kubuntu 16.04 LTS unless otherwise specified. Download the Lite version unless you have some crazy specific or commercial goals with your work. You’ll be fine with the Lite version for pretty much every other scenario. Follow the wizard and tweak the installation if necessary. I suggest installing it somewhere on your home partition.

Install dependencies

Install the following dependencies to resolve ModelSim not opening:

Set Environment Variables and Path

Now let’s get back to that thing about environment variables. You need to set them for things to work properly. The worst part is that the tools will launch without them but will break eventually. In most cases, no message is given when this happens. I figured that was the issue after many hours of trial and error when I finally saw an error message on a terminal running Eclipse. Another good tip: run everything on terminals - even GUI apps - since the few error messages will be displayed there. Otherwise, you’ll miss these messages entirely. Anyway, there are two ways to deal with this: Find the environment variables used by all tools scattered throughout Altera’s pdfs; manually add them using export; and still be susceptible to the chance of one being missed and something break abruptly later.

​​Run​ ​this script and have it add everything you need.

Let's assume you've chosen the latter. This script is used to setup the Nios II Software Build Tools (SBT). Even if your project does not be use the Nios softcore I recommend running this script on every terminal you use. It's easier and faster. It will setup all the necessary variables according to your system/installation and add the relevant folders to the system path - bash will auto complete Quartus' commands. You can use printenv to see which variables were added. If you want to automate the process, add the execution of the script or the export of every variable to your .bashrc file.

Running the Programs

After having the variables and path set, running Quartus Prime and ModelSim is painless. Just run on your terminal, respectively:

If you want to run Eclipse with Nios 2 support there’s a catch. There is a built in command for it: eclipse-nios2. But guess what. It doesn't work. It always results in a Segmentation Fault. Because of this, opening Eclipse from Quartus’ Tools tab will also fail. For what I experimented, this command runs mistakenly the binary located at:

When it should run:

Run the second binary and Eclipse will launch with no issues.

I hope this tips get you on your way as fast as possible. It’s really frustrating and unnecessary being stuck on your work because of things like this.

Until next time, cheers.

©2020 Bernardo Rodrigues.