aboutsummaryrefslogtreecommitdiffstats
path: root/doc/qtcreator/src/conan/creator-projects-conan.qdoc
blob: f76eaac6a1774f7818ac112c00657235df6e38d3 (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
/****************************************************************************
**
** Copyright (C) 2022 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** 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. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
**
****************************************************************************/

/*!
    \page creator-project-conan.html
    \previouspage creator-project-incredibuild.html
    \nextpage creator-cli.html

    \title Setting Up Conan

    \l {https://conan.io}{Conan} is a C/C++ package manager that speeds up the
    integration of C or C++ libraries into your own project. It's available on
    all the \l{Supported Platforms}{supported development platforms}.

    Conan can be integrated into most build systems that are integrated into
    \QC:

    \list
        \li \l{https://docs.conan.io/en/latest/integrations/cmake.html}{CMake}
        \li \l{https://docs.conan.io/en/latest/integrations/qbs.html}{Qbs}
        \li \l{https://docs.conan.io/en/latest/integrations/qmake.html}{qmake}
        \li \l{https://docs.conan.io/en/latest/integrations/meson.html}{Meson}
    \endlist

    The client-server architecture of Conan enables the client to fetch packages
    from and upload them to remote servers that act as package storage. The
    client creates the packages, and if necessary, handles building them from
    sources. Because the client has a local cache for package storage, you can
    work offline, as long as no new packages are needed from remote servers.

    To use Conan, install it by using the Qt installer or the tools provided by
    your operating system. For example, on Windows, you can use the
    \c {choco install conan} or \c {pip install conan} command.

    To enable the experimental Conan plugin, select \uicontrol Help >
    \uicontrol {About Plugins} > \uicontrol Utilities > \uicontrol Conan.
    Then select \uicontrol {Restart Now} to restart \QC and load the plugin.

    For each project, you must write a
    \l{https://docs.conan.io/en/latest/reference/conanfile.html}{conanfile.py}
    or \l{https://docs.conan.io/en/latest/reference/conanfile_txt.html}
    {conanfile.txt} file that specifies the needed libraries and packages.
    Then, you must edit the build settings of the project to specify the
    location of the file and the contents of the Conan install command.
    For more information, see \l {Conan Build Steps}.

    Alternatively, you can automatically set up the Conan package manager for
    use with CMake. For more information, see \l{Using CMake with Conan}.
*/