{{Note| This is still a problem in v16.0. The solution is to downgrade lib32-freetype2 to 2.5.0.1-1 because the other method mentioned below does not seem to work.}}

There are two solutions to solve this problem. The first involves downgrading the Package (probably via the [[Arch Linux Archive]]). If you are using the 32-bit version, it is sufficient to downgrade {{Pkg|lib32-freetype2}}. The second and more elegant solution involves replacing the old freetype version for ModelSim only without withholding updates on the whole system (originally proposed at the now-dead link http://communities.mentor.com/mgcx/message/46770):

There are two solutions to solve this problem. The first involves downgrading the Package (probably via the [[Arch Linux Archive]]). If you are using the 32-bit version, it is sufficient to downgrade {{Pkg|lib32-freetype2}}. The second and more elegant solution involves replacing the old freetype version for ModelSim only without withholding updates on the whole system (originally proposed at the now-dead link http://communities.mentor.com/mgcx/message/46770):

−

*Copy the freetype library and symlinks somewhere in the altera folder, eg: {{ic|$HOME/altera/xx.x/lib32/}}

Quartus Prime Standard Edition

Installation via AUR

To install the latest version of Quartus Prime and Modelsim install the package quartus-freeAUR.

Note: This package will install all the devices supported by Quartus Prime. To do a minimal installation see the manual installation instruction.

To start Quartus Prime execute quartus.

To program a FPGA (via the USB-Blaster) the user needs to be part of the plugdev group.

Manual installation

The following procedure shows how to download, install, and configure Altera Quartus Prime Standard Edition v15.1 for Arch Linux.

Note: The following tutorial works for older Quartus II and ModelSim versions, including both Subscription Editions and Web Editions, from at-least v13.0 through v15.0.

Quartus Prime is Altera's design software collection to design and interact with all their FPGAs/CPLDs/etc. products.

The procedure focuses on Arch Linux 64-bit systems, although 32-bit installations should work fine too.

Quartus Prime Standard Edition v15.1 is officially supported
for RHEL 5 and RHEL 6, but since it is one of those huge collections of proprietary software that does not
interact so much with the distribution, it is fairly easy to install on Arch Linux.

Get Quartus Prime

In Altera's Downloads section, select Linux as the operating system
and get the Combined Files tar archive (something like Quartus-15.1.2.193-linux-complete.tar).

Install dependencies

Although the main Quartus Prime software is 64-bit, alot of Altera tools shipped with Quartus Prime are still 32-bit
software. Those include the Nios II EDS and Qsys, for example. This is why we need to install lots of
lib32- libraries and other programs from the Arch Linux Multilib repo. Obviously, if you have a 32-bit
Arch Linux system, you do not need the Multilib versions.

In order to install Multilib packages using pacman, you need to enable the multilib repository first (if not already done).

Even if quartus is now a command known by Bash, you still need to add the --64bit argument in order to launch the 64-bit
version. A shell alias, like quartus64, is a great solution to avoid typing it each time.

Application menu entry - Quartus Prime

A freedesktop.org application menu entry (which a lot of desktop environments and window managers follow) can be added
to the system by creating a quartus.desktop file in your ~/.local/share/applications
directory:

USB-Blaster Download Cable Driver

The USB-Blaster (I and II) Download Cable is a cable that allows you to download configuration data from your computer to your FPGA, CPLD or EEPROM configuration device. However, Altera only provides official support for RHEL, SUSE Entreprise and CentOS, so we are required to do a little bit
of work to make it work with Arch Linux. If you want some more detail about this cable, please refer to
the USB-Blaster Download Cable User Guide.

Standard Edition License Validation

Configuring the path to your Quartus Prime Standard Edition license file from the Quartus Prime settings interface is not enough for successful license validation. The license validation routine looks for your MAC address on device eth0. This was the legacy name for your ethernet controller; now systemd dynamically allocates a name to your device on boot - this can be different from machine to machine. We need to rename that device back to the expected eth0.

Troubleshooting

Empty (greyish) windows inside quartus (XMonad)

Some of the built-in editors in quartus such as ip editors and qsys only show a blank window.
To workaround this issue change the name that is reported by your window manager to for example LG3D.
To change the name reported by XMonad see the documentation.

There are two solutions to solve this problem. The first involves downgrading the Package (probably via the Arch Linux Archive). If you are using the 32-bit version, it is sufficient to downgrade lib32-freetype2. The second and more elegant solution involves replacing the old freetype version for ModelSim only without withholding updates on the whole system (originally proposed at the now-dead link http://communities.mentor.com/mgcx/message/46770):

There are two solutions to this problem. One is to use ncurses5-compat-libsAUR and tweak the PKGBUILD to compile a 32-bit version of the library. (Or use lib32-ncurses5-compat-libsAUR) This will provide the latest version of ncurses with an ncurses5-compatible ABI.

The other solution is to download the ncurses 5.9 source, compile it, and copy the generated libraries and symlinks to the same directory as the freetype2 libraries.

lib32-glibc 2.23-1

The upgrade from lib32-glibc version 2.23-1 to later versions of lib32-glibc breaks FlexLM and prevents ModelSim from checking out a license. One workaround is to download the archived lib32-glibc-2.23-1 and extract it to a directory such as ${HOME}/altera/xx.x/lib32/glibc223-1. Then create or modify the LD_LIBRARY_PATH environment variable at the top of the /opt/altera/xx.x/modelsim_ae/vco script to include the new glibc223-1/usr/lib32 directory in the search path: