Building-Qt-Creator-Packages
General Building of Qt Creator
- It is recommended to build in a shadow build directory
- where
qmake $SOURCES/qtcreator.pro <span class="caps">CONFIG</span>+=release” “<span class="caps">DEFINES</span>+=IDE_REVISION=$GIT_COMMIT” “<span class="caps">QTC</span>_PREFIX=/qt-creator-x.y.z”
should be the sha1 of the commit that you build, and where the$GIT_COMMIT
is the directory prefix used for the 7zips that are created by the bindist target (see below).<span class="caps">QTC</span>_PREFIX
- set the following environment variables:
- : changes the location for the install dir when doing
<span class="caps">INSTALL</span>_ROOT
, e.g.make install
(not used on Mac)$BUILDDIR/install/qtcreator
- : can be set to e.g.
<span class="caps">INSTALL</span>_EDITION
, used for 7z and dmg file names,-opensource
$${PLATFORM}$(<span class="caps">INSTALL</span>_EDITION)-$${QTCREATOR_VERSION}$(<span class="caps">INSTALL</span>_POSTFIX)
- : used for 7z and dmg file names,
<span class="caps">INSTALL</span>_POSTFIX
$${PLATFORM}$(<span class="caps">INSTALL</span>_EDITION)-$${QTCREATOR_VERSION}$(<span class="caps">INSTALL</span>_POSTFIX)
make
make docs
- (don’t use on Mac)
make install
- (don’t use on Mac)
make install_docs
make deployqt
After these calls the
<span class="caps">INSTALL</span>_ROOT
(Windows/Linux) or
$BUILDDIR/bin/Qt Creator.app
(Mac) contains a distributable binary build.
To add “external” executables (jom, qtcreatorcdbext64) that we deploy for Windows builds to your install, call
make deployartifacts
To create a 7zip with the binary build, call
make bindist
That packages the files with a directory starting with theyou set in the qmake call.<span class="caps">QTC</span>_PREFIX
To create a 7zip that can be used for installers, that directly contains the files without additional directory prefix (i.e. directly bin/, lib/, and so on), call
make bindist_installer
To create actual Qt Creator-only installers, you need to have the installer framework binaries installed, then
- set the following additional environment variable:
- : location where
<span class="caps">IFW</span>_PATH
looks for the installer framework binaries (i.e. its bin/ and lib/ directories)make installer
make bindist_installer installer
To create a disk image (dmg) with the
Qt Creator.app
on Mac, call
make dmg
Things affecting the build/install
Environment Variables
INSTALL_ROOT | Changes the location for the install dir when doing make install
$BUILDDIR/install/qtcreator
$(<span class="caps">INSTALL</span>_ROOT)$$QTC_PREFIX
|
INSTALL_BASENAME | Sets the base name used for the files created by make bindist, bindist_installer, dmg and dmg_installer. Defaults to qt-creator-$${PLATFORM}$(<span class="caps">INSTALL</span>_EDITION)-$${QTCREATOR_VERSION}$(<span class="caps">INSTALL</span>_POSTFIX)
|
INSTALL_EDITION | Can be set to e.g. -opensource
|
INSTALL_POSTFIX | Used for default INSTALL_BASENAME |
IFW_PATH | Location where make installer
|
INSTALLER_ARCHIVE | This overwrites the default value of the 7z filename which is used by the bindist_installer step, including file extension. |
Qmake Variables
QTC_PREFIX | directory prefix for the install directory make install
make bindist
/
/qt-creator-x.y.z
$(<span class="caps">INSTALL</span>_ROOT)$$QTC_PREFIX
|
IDE_PACKAGE_MODE | Disables building the HellWorld and UpdateInfo plugins (which are built but marked experimental otherwise) |
UPDATEINFO_ENABLE | Enables the UpdateInfo plugin and enables it for the build (usually it is marked as experimental) |
QT_PRIVATE_HEADERS | Set to QTDIR/include where private headers are installed, if your Qt version doesn’t have them in its standard include directory |
C Defines
IDE_VERSION_DESCRIPTION | Text description for the Qt Creator version, shown in parenthesis after the version number in the About dialog. For example used to show “Qt Creator 2.4.82 (2.5.0-beta)” (IDE_VERSION_DESCRIPTION=“2.5.0-beta” in that case) |
IDE_REVISION | String to show as revision in About dialog. Should be set to the git sha that the Qt Creator was built from. |
IDE_SETTINGSVARIANT | Changes the directory where Qt Creator looks for user settings and resources. E.g. ~/.config/IDE_SETTINGSVARIANT/qtcreator.ini
|
Install Settings
Qt Creator reads the QtCreator.ini, qtversion.xml and toolchains.xml from its installation directory as “install settings”. (The directory is
share/qtcreator/IDE_SETTINGSVARIANT/
on Windows and Linux,
Qt Creator.app/Contents/Resources/IDE_SETTINGSVARIANT/
on Mac.)
The qt versions from the qtversion.xml and tool chains from toolchains.xml are added as “autodetected” to Qt Creator. The settings file (.ini) is used for QSettings::SystemScope. An installer can give any Qt Creator setting a default value by writing into this .ini file.
The following special settings (or specially notable settings) are also read by Qt Creator:
ExampleManifests | Array of strings. Paths to manifest xml files that describe examples to show in Qt Creator’s example browser. |
Plugins/Ignored | QStringList (i.e. string containing of comma-separated values). Names of plugins that should not be loaded by default (even though they are installed and not marked experimental). |
Plugins/ForceEnabled | QStringList (i.e. string containing of comma-separated values). Names of plugins that should be loaded even though they would not be loaded by default (e.g. because they are marked as experimental). |
Help/InstalledDocumentation | QStringList (i.e. string containing of comma-separated values). Paths to qch (documentation) files and directories containing qch files that should be registered with Qt Creator |
Todo
{{DISPLAYTITLE:Building Qt Creator Packages}}