Electronics - Quartus II - Setting up command-line interface (CLI)

As I've noticed some bugs with the Linux version, I've decided to start using Altera Quartus II for Windows.

Some examples of bugs: the Altera Simulator doesn't start when you try to launch it or when you want to set the clock with ModelSim, some windows are not well designed and you can't see anything.

Well, Linux is cool but Windows can be also a good alternative.

The Quartus II version is the 13.0.sp1 or simply 13.0.1.

Let's handle this Quartus II tutorial by setting up Windows command-line interface (CLI).

If you really want to use Linux, examples provided here will be of course helpful for you too.

First of all

You are certainly aware that the native Windows command-line interface is not better than what one can find on Linux.

That's why some people have decided to create a Linux-like command-line interface to reproduce on Windows what one's on Linux.

There're two famous CLI such as Cygwin and MinGW.

It turns out that Cygwin is provided with your Quartus software.

So, let's get started.

Windows, Quartus and Cygwin

Great news: Cygwin is already provided with Quartus.

So you don't need to download and install tons of GNU utilities.

To find it, go to the directory where you've installed Quartus.

For me it's: C:\soft\fpga\altera\quartus\13.0sp1\quartus and we'll assume it's the same for you for the rest of this tutorial.

In this directory you can find two binary files: bin and bin64.

As you could guess, the first is for a 32-bit and the second for a 64-bit system.

I've used a 64-bit version of Quartus, so the directory where I will find all useful binaries will be in the bin64 folder.

We'll assume that's the same for you for the rest of this tutorial.

Inside there's a cygwin directory.

Open it and double-click Cygwin.bat.

A new black window's opened: this is Sparta Cygwin. (Sorry for this 300's joke.)

If you are familiar with Linux' shell, you'll be happy to realize that a command like ls -la is available.

Actually most everything of classic GNU tools are available.

You can even change your .bashrc.

But one thing is different: to find your drives.

Indeed, the following command is not usual:

cd /cygdrive/

Then choose the drive you would like to go.

For example to reach our folder Quartus installation, we'll have to type:

cd /cygdrive/c/soft/fpga/altera/quartus/13.0sp1/quartus/bin64

But before using Quartus, you'll have to set your environment variables.

Environment variables

On Windows, installing a new software is synomyn of setting up environment variables (EV).

It's then necessary to add the directory where there're your Quartus binaries:


If you don't know how to do that, just follow 1.B section of this Apache Ant tutorial that I made.

We need this directory to be in your EV because inside there're all your quartus_*.exe files.

And those files are used by your Quartus IDE.

So when you launch quartus.exe it'll run each quartus_*.exe file when needed.

And with Cygwin, we'll be able to launch those files one after another, like professionals.


Once your EV set, let's test it.

After setting your environment variables, it's necessary to restart your Cygwin window.

So close it, and reopen it.

Then in Cygwin type:


You should see something like that:

$ quartus_sh
Quartus II 64-Bit Shell
Version 13.0.1 Build 232 06/12/2013 Service Pack 1 SJ Web Edition
Copyright (C) 1991-2013 Altera Corporation


quartus_sh [-h | --help[=<option|topic>] | -v]
quartus_sh -g | --gui [<project_name>]
quartus_sh <other options>
quartus_sh -t <script file> [<script args>]
quartus_sh -s
quartus_sh --tcl_eval <tcl command>

If you 've quite the same, your EV are now set correctly and you're ready to use every single quartus_*.exe file.


Working with command-line interface is, in my opinion, something essential in order to understand what happens during analysing, synthetising, elaborating, assembling, etc.

Keep going, you're close to manage it. laugh

Add new comment

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.