summaryrefslogtreecommitdiff
path: root/doc/api/getting-and-building.qdoc
blob: 980c80274fa12c50a9df48bcd0524d1ded50a613 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/**************************************************************************
**
** Copyright (c) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of Qt Creator
**
**
** GNU Free Documentation License
**
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of this
** file.
**
**
**************************************************************************/

/*!
    \page getting-and-building.html
    \title Getting and Building Qt Creator

    \code
    TODO: This should be extended.
    * How to avoid building Qt
    * Windows specific hassle, see README in \QC sources
    \endcode

    There are several reasons why you might want to do your own build of \QC,
    like using the most current development version and being able to tweak
    \QC at one or the other place. It is also necessary if you want to
    create your own \QC plugin.

    \section1 Getting and Building Qt

    \QC usually uses the latest stable release of Qt,
    you can see the exact minimum requirement at the top of \QC's qtcreator.pro.
    (You can find the current version in our source repository here:
    \l{http://qt.gitorious.org/qt-creator/qt-creator/blobs/master/qtcreator.pro}.)

    You find the sources for the different Qt versions for example on our gitorious repository
    \l{http://qt.gitorious.org/qt}.

    \QC requires private headers of Qt, which are unfortunately not installed
    by the Qt binary packages, and also are not copied to the installation directory when
    using \c{make install} on a self-compiled Qt. To solve this problem
    configure Qt with the \c{-developer-build} option, which sets the install
    directory to the build directory itself (you are not required to run
    \c{make install} in that case).
    In Linux and Mac terminals, enter the following commands:
    \code
    cd <QtSources>
    ./configure -developer-build
    make
    \endcode
    On Windows, open a command prompt where your developer tools are set up, and enter
    the following commands for MSVC builds
    \code
    cd <QtSources>
    configure -developer-build
    nmake
    \endcode

    If you really need to use a Qt build that does not have private headers in its
    installation directory, you can set the \c{QT_PRIVATE_HEADERS} qmake variable
    to the include path which contains them, when running qmake on the \QC
    sources (see below).

    \section1 Getting and Building \QC

    You can get the \QC sources for a specific version either by using one of the
    released source bundles, or from the Gitorious repository
    \l{http://qt.gitorious.org/qt-creator}. If you intend to contribute to \QC
    itself, you should use the repository from our Gerrit review tool as described
    in the developer wiki here: \l{http://wiki.qt-project.org/Setting_up_Gerrit}.

    We strongly encourage you to do out-of-source builds of \QC (also called
    shadow-builds).
    After you put the \QC sources somewhere (lets call the path \c{<QtCreatorSources>})
    you build it on Linux and Mac with
    \code
    cd <QtCreatorSources>/..
    mkdir qtcreator-build
    cd qtcreator-build
    <QtInstall>/bin/qmake -r <QtCreatorSources>
    make
    \endcode
    or the corresponding commands on Windows systems.

    If your Qt installation does not contain private headers (see above), you can point \QC
    to the private headers by setting the \c{QT_PRIVATE_HEADERS} qmake variable
    to the include directory that contains them. On Linux and Mac, enter the following command
    instead of the qmake call above:
    \code
    <QtInstall>/bin/qmake -r QT_PRIVATE_HEADERS=<QtSources>/include <QtCreatorSources>
    \endcode
*/