From Qt Wiki
Revision as of 10:00, 25 August 2015 by Hunger (talk | contribs) (→‎Contributing to Qt Creator: Explain how to get the sources, set up gerrit and push to gerrit)
Jump to: navigation, search

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

English Deutsch Español Português Русском Italiano Magyar عربي فارسی Ελληνικά

Qt Creator

Qt Creator is a cross-platform IDE (integrated development environment) tailored to the needs of Qt developers. It is part of the Qt Project.

Advanced code editor

Qt Creator focuses on providing features that help new Qt users get up and running faster, and also boost the productivity of experienced Qt developers.

  • Code editor with C++, QML and ECMAscript support
  • Rapid code navigation tools
  • Syntax highlighting and code completion
  • Static code checking and style hints as you type
  • Support for source code refactoring
  • Context sensitive help
  • Code folding
  • Parenthesis matching and parenthesis selection modes

Visual debugger

The visual debugger for C++ is aware of the structure of many Qt classes, thus increasing its ability to display Qt’s data clearly. In addition, Qt Creator displays the raw information from GDB in a clear and concise manner.

  • Interrupt program execution.
  • Step through the program line-by-line or instruction-by-instruction.
  • Set breakpoints.
  • Examine call stack contents, watchers, and local and global variables.

GUI designers

Integrated GUI layout and forms builder for C++ projects, which allows you to rapidly design and build widgets and dialogs using on-screen forms using the same widgets that will be used in your application. Forms are fully-functional, and they can be previewed immediately to ensure that they will look and feel exactly as you intended.

Installing Qt Creator

If you are interested in using Qt Creator for development, check our download page or look for Vendor Packages.

If you want to check out the latest features, fetch the latest source snapshots for the master or one of the other branches. Alternatively, we provide nightly updated binary snapshot builds.

If you want to participate in the development of Qt Creator, see the section on contributing to Qt Creator below.

Contributing to Qt Creator

We mostly follow the process and guidelines used for Qt itself that you can find in the Category:Developing_Qt::Guidelines. Please find detailed information about the process there. There is also a work-in-progress draft on Extending Qt Creator. Apart from contributing code, you can also help us by testing Qt Creator on the platform of your choice, see Qt Creator Quality Assurance. If you have questions, don’t hesitate to contact us e.g. at the #qt-creator IRC channel on Freenode or on our mailing list. (For a full list of IRC channels see OnlineCommunities.)

Setting up a Qt Creator development environment

  • Make sure you have a supported Qt version available on your machine.
  • Clone the code from one of the "Clone" urls found on running. Run "git clone <URL>" to do that.
  • Copy a git hook from our gerrit server. To do so switch into the directory you checked out just now and run "scp -P 29418 -p .git/hooks" there. This hook will add Change IDs that are needed by gerrit to all commit messages you write going forward.

Setting up Gerrit to contribute back to Qt Creator

These steps are only necessary if you do not already have gerrit set up for contributions to Qt or other projects listed on

  • Create a new account on (if you do not have one already)
  • Log into with that account. It works for both as well as
  • Follow the setup steps given there:
    • Provide a Full Name
    • Provide an email address where you can be reached. This address needs to match the one you use in your git commit messages.
    • Paste your public SSH key into the text field and press "Add"
    • Follow the "New Contributor Agreement" link at the bottom of the page.
  • Agree to the contributor agreement (Individual contributor) or have somebody in your company register a company wide CLA with our Gerrit and get your user added to that CLA.

Now gerrit should be functional for you.

Setting up git to use Gerrit

Gerrit is the software running on that we use to discuss and review all patches going into Qt Creator.

This assumes you have set up your git clone according to "Setting up a Qt Creator development environment" above.

Now you should be able to push all of your changes to Gerrit by simply doing "git push gerrit HEAD:refs/for/master" (or refs/for/BRANCHNAME if you do want to sent them to other branches). Please set up reviewers using the gerrit web UI to all patches. Without reviewers you will see a long delay before your patches get reviewed (if they do not fall through the cracks completely!). "git blame <FILENAME>" on the files you touched usually is a good way to find possible reviewers. Adding the responsible maintainer according to Maintainers is also a good idea.

If you are considering to send several patches, please consider to clone and add the "bin" directory in that repository to your PATH. This will enable some new commands for git. These include "git gpush" that helps with pushing to gerrit and using that is highly recommended. Please also check the comment in git-hooks/git_post_commit_hook found in that repository to enable the sanity checks gerrit runs on local commits.

Documentation on experimental features

Questions and Feedback

If you have any problems, please look through our Frequently Asked Questions first. If your problems persist, scan the Qt Creator mailing list archive (the old list is here). If that doesn’t help, have a look at our Bug Tracker to check if it is a known problem, or to create a bug report. Finally, you can ask on the Qt Creator mailing list (you need to subscribe first). You can also try to ask questions at the #qt-creator IRC channel on Freenode where you will find both Qt Creator developers and Qt Creator users.


External Links

Autotools Project Manager, part 1: Understanding QtCreator's Project Explorer

Qt Creator Embedded Debugging Setup


This category has the following 2 subcategories, out of 2 total.