Qt Build Environment
Currently there are two desktop tools in SVN that are based on the Qt4 framework. Qt4 is available for all major Operating Systems (Linux, Windows, MacOS X).
Setup on Windows (2000, XP, Vista, 7)
On Windows Qt itself support various compilers. We're only using the gcc compiler as provided by the MinGW project. You also need some additional tools that are standard on Unix systems.
You need a Qt framework that is build with the MinGW gcc compiler and the used compiler. The easiest way is to install the Qt SDK which includes a pre-built Qt and the MinGW compiler. The SDK also includes the integrated development environment Qt Creator.
Note: The Qt SDK does not include
libz in its MinGW installation. This is not a bug in the SDK because you can link libz implicitly, we want to link it explicitly though. You can simply add this by downloading the libz dll and dev packages from the MinGW website and extracting the archives into the MinGW installation.
Note: The Qt SDK comes with MinGW bundled. If you installed the Qt SDK you don't need to install MinGW separately.
If you want to go the manual route you can also install MinGW yourself (follow the instructions on the MinGW website). You then can use the "Qt libraries" from the Qt website instead or get the source and build Qt yourself.
Makefiles use Unix tools that are not present on Windows. The easiest way to get those is to install MSYS 1.0.11. Newer versions of MSYS don't come bundled as installer, but that version is sufficient. If you're installing MinGW yourself (i.e. you are not using the Qt SDK) install msys using
mingw-get as described on the MinGW homepage.
Both MinGW and MSYS needs to be accessible from within the PATH environment variable. To do this you can
- add the paths permanently to the PATH environment variable. Make sure both MSYS and MinGW are at the beginning of the PATH list.
Note: This might override some Windows programs and cause issues with other programs.
- manually set the PATH environment variable when starting the command line. This is as simple as typing
- create a
cmd script that sets the environment variable and keeps a window open. You can then invoke this script instead of running
cmd.exe for building.
Rockbox source code
Get the source code from SVN as described in UsingSVN.
Setup on Linux
Qt is part of all major Linux distributions. Install the developments tools (various distributions have package groups for that) and the Qt development package (you also need
qmake which is part of Qt. Some distributions split it out into a separate package). Note: some distributions install the
qmake binary as
Setup on Mac OS X
You need to install
- XCode (available on the OS X installation disk and at the Apple website)
- Qt itself. If you intend to build universal binaries you need the Carbon version of Qt. Installing the libraries version is sufficient for compiling.
Note: you don't need to build Qt4 yourself if you installed the Qt SDK and don't want to build statically linked binaries.
To create binaries that are statically linked against Qt you need to rebuild Qt statically. A statically built Qt is used for building the binaries provided to avoid having to extract additional DLL files.
(add description how to build Qt statically here)
Building the programs
Currently the following desktop programs use the Qt framework:
Please refer to their respective wiki pages on additional or changed build steps. If you have the build environment set up and the environment variables set correctly building usually is as simple as the following:
- open the command window with the correct environment set
- change to the source folder
qmake. If you don't have
qmake in your path (which is the case if you installed the Qt SDK) invoke it with the complete path. I.e.
mingw32-make. This has to be in your
PATH, as otherwise the system won't find the compiler as well. If it's not in your
PATH you haven't set up the environment correctly.
If you want to build universal binaries targeting OS X 10.4 and up (configured in the program project file) you need to use the correct
QMAKESPEC. On 10.6 Qt defaults to building xcode project files targeting 10.5 and up. You can select the used makespec in two ways (you don't need this when using
deploy.py as it's already included in that):
- set the environment variable
macx-g++40, i.e. run
export QMAKESPEC=macx-g++40 before running
- use the
qmake command line option
-spec, i.e. run
qmake -spec macx-g++40.
You can add the (undocumented) option
-config silent to the
qmake run. This will make the compiler output much more silent, giving a better chance to spot compiler warnings. This is especially useful when developing.
deploy.py is a Python script to automate building and releasing the Qt based programs. To use it you need the followign:
Copyright © by the contributing authors.