All Classes Namespaces Functions Variables Enumerations Properties Pages
Building Pencil2D on Linux

These are instructions for building Pencil2D on Linux. If you are using Windows go here, and macOS go here. This guide is primarily targeted towards developers. If you just want to use the latest version you can just download one of our nightly builds.

This tutorial was made with Ubuntu Xenial Xerus (16.04) and Arch Linux in mind, however you should be able to adapt this guide to other versions or distributions if necessary.

Installing Dependencies

There are a few things that must be installed in order to build Pencil2D. In this section we will go over the installation of each of these components in detail. For Ubuntu we describe both graphical and command-line methods of installation, choose whichever one you feel more comfortable with (and if you don't know the difference, choose graphical). For Arch Linux we describe only the command-line method since that is what most Arch users are used to.


Pencil2D relies on the Qt application framework so you must install it before you can successfully build the program.


Graphical method
Command-line method

Pencil2D must be built with the Qt 5 framework. To install Qt 5, run this command:

sudo apt install qt5-default qt5-qmake libqt5xmlpatterns5-dev libqt5svg5-dev qtmultimedia5-dev

If you want to install Qt Creator (recommended), then also run the following command:

sudo apt install qtcreator

Arch Linux

Pencil uses version 5 of the Qt framework. To install all required components of Qt, run this command:

sudo pacman -S --needed qt5-multimedia qt5-svg qt5-xmlpatterns

For a more pleasant development experience, you might want to install Qt Creator as well (recommended). To do so, run the following command:

sudo pacman -S --needed qtcreator

Make and GCC/Clang

You will need GNU Make and either GCC or CLANG to build Pencil2D.


These are usually installed by default, so you don't have to worry about them. If however you encounter issues, you can run the following commands.

Arch Linux

On most Arch systems, these are installed early on, but if your system does not have them yet, you can install them by running the following commands.

Building the application

Now it's time to build the application. If you do not already have the Pencil2D source, please go over {Downloading Pencil2D Source} (coming soon) before continuing.

With Qt Creator (recommended)

If there is an error, the issues tab will open up at the bottom and display the error messages. Try searching it on the Pencil2D Issue tracker or create an issue If you can't find anything. Be sure to include as much detail as you can in your report!

With QMake/GNU Make

If you do not have or do not want to use Qt Creator for some reason then you can follow this two step process. First you have to use QMake to let Qt do its preprocessing and generate the Makefiles. Cd to the root git directory for Pencil2D. To avoid cluttering the source directories with generated files, we’ll create a subdirectory named build for those. For the next step you will need to know the correct mkspec for your computer. Use the table below to find it.

Compiler 32-bit 64-bit
GCC linux-g++-32 linux-g++-64
Clang linux-clang linux-clang

Substitute <mkspec> for the mkspec of your desired configuration and run the command below:

mkdir build; pushd build; qmake -r -spec <mkspec> CONFIG+=debug ..; popd

Next you have to use GNU Make to actually compile the source code. Run the command:

make -C build

You can then open Pencil2D by running this from the source directory:


Next steps

Now that you can build Pencil2D, the next step is to learn about navigating the source code.