How to
The following topics describe how to use Qt Creator to perform a particular task.
Adapt the UI
Navigate the Qt Creator UI or change its appearance and behavior.
How to adapt the UI
- Assign keyboard shortcuts
- Change the UI language
- Detach views
- Find keyboard shortcuts
- Find preferences
- Import and export keyboard shortcuts
- Set high DPI scaling
- Set the number of recent files shown
- Show and hide sidebars
- Show and hide the main menu
- Show task list files in issues
- Switch UI themes
- Switch between modes
- Use info bars instead of pop-ups
- View output
Analyze
Use integrated code analysis tools to detect memory leaks, profile function execution, analyze CPU use, and eliminate unnecessary complexity of code. Other integrated tools provide code coverage and visualize trace events.
How to analyze code
- Analyze CPU usage
- Analyze code with Clang-Tidy and Clazy
- Check code syntax
- Configure Clang diagnostics
- Create compiler explorer sessions
- Detect errors in C++ code with Cppcheck
- Detect memory leaks with Heob
- Detect memory leaks with Memcheck
- Explore compiler code
- Local analysis with Axivion
- Profile CMake code
- Profile QML applications
- Profile function execution
- Run Valgrind tools on external applications
- Set up code coverage from Coco
- Specify Valgrind settings for a project
- View Axivion static code analysis results
- View code coverage reports from Coco
Build and run
Use integrated cross-platform systems for build automation to compile your source code for different target platforms or with different compilers, debuggers, or Qt versions. Deploy applications to the target platforms and run them there.
How to build and run applications
- Activate custom output parsers
- Add custom output parsers
- Build for many platforms
- Configure development tools
- Configure projects for building
- Customize the build process
- Edit Qbs profiles
- Edit vcpkg manifest files
- Enable debugging
- Parse build output
- Set the default build and run directories
- Use compilation databases
For more information, see Building and running projects.
Build with CMake
CMake controls the software compilation process by using simple configuration files, called CMakeLists.txt files.
How to build with CMake
Build with qmake
qmake automates the generation of Makefiles based on the information in a project file that has the extension .pro.
How to build with qmake
Manage kits
Qt Creator groups build and run specific settings as kits to make cross-platform development easier. Each kit consists of a set of values that define one environment, such as a device, toolchain, Qt version, and debugger command to use.
How to manage kits
Run projects
Run applications on local and remote desktop systems, as well as on embedded and mobile devices that you connect to the computer.
How to run applications
Configure Qt Creator
Use basic Qt Creator features and preinstalled extensions and plugins. Install more extensions and plugins and configure external tools for use.
How to configure Qt Creator
- Activate extensions
- Collect usage statistics
- Contact Qt
- Enable and disable plugins
- Inspect internal logs
- Install extensions
- Install plugins
- Manage extensions
- Manage sessions
- Record screens
- Reset Qt Creator settings
- Run Qt Creator from the command line
- Set up version control systems
- Turn on crash reports
- Use Qt Linguist
- Use common VCS functions
- Use external text editors
- Use external tools
Create projects
Create projects for developing applications and libraries using preset wizards or your own wizards. Then configure the projects for building and running the applications on target platforms.
How to create projects
- Add libraries to qmake projects
- Add subprojects to projects
- Add wizards
- Create Nimble projects
- Create Qt Interface Framework projects
- Create Qt Quick Applications
- Create Qt Quick UI Prototypes
- Create VCS repositories for new projects
- Develop Qt for Python applications
- Import an existing project
- Select the build system
- Use project wizards
Add files
Add files to projects.
How to add files to projects
Configure projects
Change the default configurations that installation programs and project wizards create and override global preferences for a particular project.
How to configure projects
- Activate kits for a project
- Apply filters before scanning for tests
- Configure C++ code model
- Configure language servers for projects
- Configure projects for building
- Configure projects for running
- Edit environment settings
- Enable debugging
- Exclude files from to-do lists
- Link projects with GitLab
- Open projects
- Override CMake settings for a project
- Share project settings
- Specify Clang tools settings
- Specify build and run settings
- Specify clangd settings
- Specify dependencies
- Specify editor settings
- Specify project contents
- Specify settings for quick fixes
- Specify the environment for projects
- Use Qt Creator variables
Debug
Use debuggers to inspect the state of your application while it is running.
How to debug applications
- Add breakpoints
- Attach the debugger to running applications
- Attach the debugger to starting processes
- Debug C++ applications on VxWorks devices
- Debug CMake project files
- Debug crashed processes on Windows
- Debug on Android devices
- Debug remotely with CDB
- Debug remotely with GDB
- Examine complex values in Debug views
- Inspect basic Qt objects
- Load core files to the debugger
- Manage breakpoints
- Set data breakpoints
- Show tooltips for simple values
- Start and debug an external application
- Start debugging
- Start debugging from the command line
- Step through code
Design UIs
Design UIs with either Qt Quick or Qt Widgets. Qt Creator integrates 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.
How to design UIs
Develop for devices
Install the toolchain for building applications for the targeted embedded or mobile platform on the computer, and use Qt Online Installer to install Qt libraries that are built for the platform. Then add a kit with the toolchain and the Qt version for the device's architecture. When possible, Qt Online Installer creates suitable kits for you. Connect the devices to the computer to run, debug, and analyze applications on them.
Android
Install Qt for Android and Android tools, and connect Android devices to the computer.
How to to develop for Android
Bare Metal
Run and debug applications on small Linux devices that are not supported by the remote Linux device plugin by using GDB or a hardware debugger.
How to develop for bare metal devices
Boot to Qt
Run, debug, and analyze applications on Boot to Qt devices.
How to develop for Boot to Qt devices
Docker
Create Docker devices from Docker images and use them to build, run, and debug applications.
How to develop for Docker devices
iOS
Install Qt for iOS and Xcode, and connect iOS devices to the computer.
How to develop for iOS devices
MCUs
Install Qt for MCUs, and connect microcontrollers to the computer.
How to develop for microcontrollers
QNX Neutrino
Install Qt for QNX, and connect QNX Neutrino devices to the computer.
How to develop for QNX Neutrino devices
Remote Linux
Add kits for toolchains for building applications for generic Linux devices, and connect the devices to the computer.
How to develop for remote Linux devices
VxWorks
Build Qt for VxWorks, and create VxWorks build and run kits.
How to build application for VxWorks
WebAssembly
Install Qt for WebAssembly to build applications for the web and run them in a web browser.
How to build application for the web
Windows desktop
Develop applications using the components and tools of the Windows App SDK.
How to develop for Windows desktop
Edit code
The code editor offers useful features for editing C++ and QML code, such as semantic highlighting, checking code syntax, code completion, and quick fixes. Some of these features are also for other programming languages, such as Python, for which a language server is available that provides information about the code to IDEs.
How to edit code
- Apply quick fixes
- Automatically format QML/JS files
- Bookmark code
- Compare files
- Complete code
- Create Lua scripts
- Document code
- Download highlight definitions
- Edit Markdown files
- Edit properties of QML types
- Enclose code in brackets or quotes
- Highlight code blocks
- Indent text or code
- Insert multiple cursors
- Inspect the code model
- Locate files using the keyboard
- Move between files
- Move in QML code
- Move to symbols
- Parse files
- Paste and fetch code snippets
- Paste text from clipboard history
- Perform calculations
- Record text editing macros
- Select the current code block
- Specify Qt Quick code style
- Split the editor view
- Switch to Edit mode
- Use GitHub Copilot
- Use Qt AI Assistant
- Write down notes
Configure editors
Configure the code and text editor to suit your specific needs by changing the fonts, colors, highlighting, and indentation.
How to configure editors
Manage language servers
Configure language servers that Qt Creator adds by default or add more of them.
How to manage language servers
Search
Use the incremental and advanced search to search in currently open projects or files on the file system or use the locator to browse through projects, files, classes, functions, documentation, and file systems.
How to search
Edit state charts
Use a file wizard to create State Chart XML (SCXML) files with boilerplate code and edit them with an SCXML editor.
How to edit state charts
Edit UML-style models
Create Universal Modeling Language (UML) style models with structured and behavioral diagrams that offer different views to your system.
How to edit models and diagrams
Read documentation
Qt Creator integrates the reference documentation for the Qt versions that you install. You can add documentation from other sources.
How to get help
Test
Create and run code based tests and build system based tests. Code based testing offers special handling for particular testing frameworks that strongly ties to the underlying code models or specialized parsers. Build system based testing is independent from any testing frameworks. It retrieves information directly from the underlying build system and uses it or even the build system as such to execute the respective tests.
How to test applications
- Add tests to existing test projects
- Apply filters before scanning for tests
- Build and run tests
- Connect to Squish Server
- Create Boost tests
- Create CTest Based Tests
- Create Catch2 tests
- Create Google tests
- Create Qt Quick tests
- Create Qt tests
- Create Squish test suites
- Manage Squish test suites and cases
- Select Squish AUTs
Use Git
Git is a fast decentralized version control system that is available for Windows, Linux, and macOS. You can use the Gerrit Code Review tool for projects that use Git.
How to use Git
- Apply actions to commits
- Commit your first change
- Create VCS repositories for new projects
- Create and apply patches
- Git Tools
- Initialize Git repositories
- Interactive rebase
- Review code with Gerrit
- Set up version control systems
- Show instant blame
- Stage changes
- Use Git for Windows
- Use Git with Subversion
- Use common VCS functions
- git am
- git blame
- git branch
- git clean
- git commit
- git diff
- git fetch
- git log
- git merge
- git pull
- git push
- git reflog
- git reset
- git stash
- git status
Current file
How to handle changes in the current file
Current project
How to handle changes in the current project
Local repositories
How to manage local repositories
Commits
How to handle commits
Remote repositories
How to manage remote repositories
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.