Reference

The following topics contain reference information about using Qt Creator and the integrated tools.

Command-Line Options

Options for starting Qt Creator from the command line.

Custom Wizards

Wizard types and JSON wizard format.

FAQ

Answers to some frequently asked questions about Qt Creator.

Glossary

Qt Creator terms and concepts.

Keyboard Shortcuts

Default keyboard shortcuts.

Known Issues

Known issues in Qt Creator version 16.0.0-beta1.

Licenses and Acknowledgments

Licenses and third-party components in Qt Creator.

SDK Tool

Configure CMake and set up compilers, debuggers, devices, Qt versions, and kits from the command line.

Technical Support

Qt support sites and other useful sites.

Version Control Systems

Version control systems that you can use from Qt Creator.

Analyzers

Use integrated code analysis tools to improve your C++ or QML code.

Chrome Trace Format Visualizer

Visualize Chrome trace events generated in Chrome Trace Format (CTF).

Heob

Detect memory leaks with Heob.

JavaScript and QML Checks

Run static checks on the QML and JavaScript code in your project to find common problems.

Performance Analyzer

Analyze the CPU and memory usage of an application on Linux desktop and embedded devices.

Profiling QML Applications

Improve the performance of QML applications.

Build Systems

When you create projects, you can choose the build system to use for building the project: CMake, qmake, Meson, or Qbs. qmake is installed and configured when you install Qt. To use one of the other supported build systems, you need to set it up.

Autotools

With Autotools, you can create a portable, complete, and self-contained GNU Build System from simple instructions.

CMake

CMake is an alternative to qmake for automating the generation of build systems.

Conan Package Manager

The experimental Conan plugin integrates the Conan package manager.

IncrediBuild

IncrediBuild decreases the time it takes to build C++ code.

Meson

Use Meson to build native desktop applications.

Nimble

The Nimble package manager uses the Nim compiler to generate Nim application executables for the desktop platforms.

Qbs

Qbs is an all-in-one build tool that generates a build graph from a high-level project description (like qmake or CMake do) and executes the commands in the low-level build graph (like make does).

vcpkg Package Manager

The experimental vcpkg plugin integrates the vcpkg C/C++ package manager.

Build Configurations

Build configurations have everything you need to compile the sources into binaries. Build configurations use the tools and settings defined in their corresponding kit.

CMake Build Configuration

Settings for building applications with CMake.

CMake Presets

Examples of supported CMake presets.

Conan Build Configuration

Settings for building applications with the Conan package manager.

IncrediBuild Build Configuration

Build and clean steps for Incredibuild.

Meson Build Configuration

Settings for building applications with Meson.

Qbs Build Configuration

Settings for building applications with Qbs.

qmake Build Configuration

Settings for building applications with qmake.

Debuggers

Set up and use debuggers to debug executable binary files, as well as QML, Java, and Python source code.

Debugging Helpers

Load, customize, and add debugging helpers.

Debugging Qt Quick Projects

Debug JavaScript functions, execute JavaScript expressions to get information about the state of the UI, and inspect QML properties and JavaScript variables, as well as change their values temporarily at runtime.

Supported Debuggers

Summary of supported debugger versions.

Troubleshooting Debugger

Solve problems that you might encounter while debugging.

Debugger Views

Inspect the state of your application while debugging in the Debug mode.

Debug Mode Views

Inspect the state of your application while debugging.

Debugger Log

Troubleshoot the debugger.

Evaluating Expressions

Compute values of arithmetic expressions or function calls.

Local Variables and Function Parameters

Inspect local variables and function parameters.

Peripheral Registers

View the current state of peripheral devices, such as a mouse, keyboard, display, printer, or USB drive.

Setting Breakpoints

Set breakpoints to interrupt the application.

Viewing Call Stack Trace

View the nested function calls leading to the current position as a call stack trace.

Viewing Disassembled Code

View disassembled code for the current function.

Viewing Modules

View information about the modules included in a debugged application.

Viewing Source Files

View source files included in a debugged project.

Viewing Threads

View the threads currently active in a multi-threaded application.

Viewing and Editing Register State

View the current state of general-purpose and special-purpose CPU registers.

Devices

Connect devices to the computer to run, debug, and analyze applications built for them from Qt Creator. When you install Qt for a target platform, such as Android or QNX, the build and run configurations for the development targets might be set up automatically in Qt Creator.

Developing for Android

Set up the toolchain for building applications for Android devices.

Developing for Bare Metal Devices

Create kits to use Bare Metal toolchains installed on the computer to build applications for and run and debug them on connected Bare Metal devices.

Developing for Boot to Qt Devices

Connect Boot to Qt devices to the computer to run, debug, and analyze applications built for them from Qt Creator.

Developing for MCUs

Connect MCU devices to the computer to run and debug applications on them.

Developing for Remote Linux Devices

Connect generic Linux devices to the computer to run, debug, and analyze applications built for them from Qt Creator.

Developing for iOS

Connect iOS devices to your local machine with a USB cable to run applications on them.

Deploy Configurations

Deploy configurations handle the packaging of the application as an executable and copying it to a location you want to run the executable at. The files can be copied to a location in the file system of the computer or a device.

Android Deploy Configuration

Create Application Packages (APK) or Android App Bundles (AAB) to install and run on devices or to upload to the Google Play store.

Boot to Qt Deploy Configuration

Copy application files to Boot to Qt devices.

QNX Neutrino Deploy Configuration

Copy application files to QNX Neutrino devices.

Remote Linux Deploy Configuration

Copy application files to generic remote Linux devices or create a tarball.

Run Configurations

Run configurations start the application in the location where the deploy configuration copied it. By default, when you select Run, Qt Creator builds the project, deploys it to the device defined in the kit, and runs it there. If you did not make changes to the project since you last built and deployed it, Qt Creator simply runs it again.

Android Run Settings

Settings for running applications on Android devices.

Boot to Qt Run Settings

Settings for running applications on Boot to Qt devices.

Desktop Device Run Settings

Settings for running applications on desktop device types.

Python Run Settings

Settings for running Qt for Python applications.

QNX Run Settings

Settings for running applications on Linux-based devices.

Qt Quick UI Prototype Run Settings

Settings for running Qt Quick UI Prototype projects (.qmlproject).

Remote Linux Run Settings

Settings for running applications on Linux-based devices.

Editors

When you open files, Qt Creator chooses a suitable editor according to the file type.

C++ Quick Fixes

Summary of quick fixes for C++ code.

Clang Code Model

Offers code editing services for C++.

Edit Mode

Edit and navigate code and other resources in your projects.

FakeVim Modes and Commands

Supported Vim modes and emulated commands.

Language Servers

Get code completion, highlighting of the symbol under cursor, and jumping to the symbol definition in the editor for other programming languages besides C++, as well as diagnostics.

Model Editor

Create Universal Modeling Language (UML) style models with structured and behavioral diagrams.

QML Quick Fixes

Summary of quick fixes for QML code.

SCXML Editor

Edit state chart (.scxml) files.

Platforms

You can install and run Qt Creator on several operating systems to create applications for multiple desktop, embedded, and mobile device platforms.

Desktop Platforms

Requirements for operating systems that you can install and run Qt Creator on.

Optimizing Applications for Mobile Devices

Guidelines for developing usable applications for mobile devices.

Supported Platforms

Summary of development and target platforms.

Preferences

You can set preferences that apply globally to all projects and override them for particular projects.

Axivion

Create a connection to an Axivion dashboard server.

Beautifier

Format source code with Artistic Style, ClangFormat, or Uncrustify.

FakeVim

Set indentation for Vim-style editing and map vim commands to Qt Creator functions.

Locator

Add and change locator filters.

Nim

Set Nim code style and paths to tools.

Qbs

Set preferences for Qbs and Qbs profiles.

Qt Quick Code Style

Set QML code style.

Screen Recording

Set preferences for recording screens with FFmpeg.

Testing

Customize the handling of tests, test frameworks, and test tools.

To-Do

Add keywords for listing to-do entries.

Analyzer

Preferences for code analysis tools.

Clang Tools

Set preferences for Clang-Tidy and Clazy.

Valgrind Callgrind

Set preferences for Valgrind Callgrind.

Valgrind Memcheck

Set preferences for Valgrind Memcheck.

C++

Preferences for editing C++ code.

C++ Code Style

Set global code style for C++ files.

Clangd

Sets global preferences for the clangd code model.

Code Model

Sets global preferences for the C++ code model.

Quick Fixes

Set global preferences for C++ quick fixes.

Debugger

Preferences for debugging.

CDB

Manage the CDB process.

CDB Paths

Add the Microsoft Symbol Server to the symbol search path of the debugger.

GDB

Manage the GDB process.

General

Customize debug views and map source paths.

Kits

Preferences for build and run kits.

Compilers

Lists the registered compilers. You can add custom compilers to the list.

Kits

Set kit preferences. A kit consists of a set of values that define one environment, such as a device, toolchain, Qt version, and debugger command to use.

Text Editor

Preferences for the behavior and appearance of text and code editors.

Behavior

Set preferences for indentation, typing, and file encoding in the text editor.

Completion

Set preferences for code completion and inserting matching characters in the text editor.

Font & Colors

Set the font preferences and apply color schemes for syntax highlighting, diff editor, and code analysis results.

Snippets

Add, change, and remove snippets in the snippet editor.

UI Design

You can use a visual editor, Qt Widgets Designer, for designing widget-based UIs in the Design mode. For Qt Quick UIs, use a separate visual editor, Qt Design Studio, or the Edit mode.

Adding Qt Widgets Designer Plugins

Adding widgets to Qt Widgets Designer by creating plugins that extend Qt applications.

Converting UI Projects to Applications

Converting a project that has a .qmlproject file to one that has a .pro file.

Qt Quick Designer

A visual editor for QML files (.qml) and Qt Design Studio UI files (.ui.qml).

Qt Widgets Designer

A visual editor for Qt Widgets.

UI Files

Limitations of Qt Design Studio UI files (.ui.qml).

Using QML Modules with Plugins

Using C++ plugins to expose custom components to Qt Quick applications.

Views

When you switch modes or trigger actions, Qt Creator opens views for viewing output and organizing project contents.

Output Views

You can view output from several sources, such as a list of errors and warnings encountered during a build, detailed output from the compiler, status of a program when it is executed, debug output, or search results.

Application Output

Displays the status of a program when you execute it, and the debug output.

Compile Output

Shows all output from the compiler.

Issues

Lists issues from different sources.

Search Results View

Search through projects, files on a file system or the currently open files and view search results.

Squish

View Squish test, runner, and server logs.

Terminal

Opens a terminal.

Test Results

View test results.

To-Do Entries

Lists to-do keywords from project files.

In some modes, you can use a left and right sidebar to organize different views into project contents. Only views that are relevant to the mode you are working in are available in it.

Call Hierarchy

Shows information about incoming and outgoing function calls from a language server.

Class View

Shows the class hierarchy of the currently open projects.

File System

Shows all the files in the current directory.

Include Hierarchy

Shows the files that the current file includes and those that include the current file.

Open Documents

Shows currently open files.

Outline

Shows an overview of defined types and other symbols, as well as their properties and hierarchy in a source file.

Projects

Shows a list of projects in a project tree. The project tree has a list of all projects open in the current session. For each project, the tree visualizes the build system structure of the project and lists all files that are part of the project.

Type Hierarchy

Shows the base classes and derived classes of a class.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.