Guidelines and HOWTOs/Development
- A guide to correctly do your unit tests. Because you never push code which is not unit tested!
These are the tools that are absolutely required to build and develop KDE software. On Linux, they will typically be provided by your distribution. On other platforms, packages should normally be available, often for download directly from the home page for the tool. Of course, the standard development tools, such as a C/C++ compiler and some sort of text editor, are also required.
- CMake is KDE's build system of choice. Once you have this, you can use it to configure a software project for building, and that process will tell you of any other requirements you are missing.
- Most KDE projects are developed in Git, and so you will need it to get the source code in the first place. You can find the relevant Git URLs at the KDE projects directory. It will be helpful to follow the git how to.
- KDE still uses Subversion for some things, notably translations.
Debugging and Analysis
A list of tools which are used to analyze a program. This includes debuggers and profilers, for instance.
- Valgrind helps to find memory leaks and uninitialized memory blocks. Additional features are a profiler and more. Valgrind is one of the most important development tools!
- The GNU Project Debugger (GDB)
- GDB helps in debugging source code. As GDB evolved over time it is recommended to use version 6.x. Graphical frontends are available (see below). See also the debugging tutorial Debugging with GDB.
- KDbg and DDD
- KDbg and DDD are graphical user interfaces to GDB, which are able to set breakpoints, step through the code etc.
- MS Windows tools (Process Explorer, Console, WinDbg, DebugView...)
- More info on the KDE on Windows page.
Integrated Development Environment (IDE)
- Qt Creator
- With Qt Creator it is easy to write new KDE based programs and to integrate existing ones into an IDE. Further details can be found in the tutorial Using Qt Creator.
- KDevelop is an IDE for developing KDE and Qt C++ applications. It includes a an integrated debugger, a powerful editor with syntax highlighting, a Project wizard to create applications from templates, the automake/autoconf gunk, and even the class documentation. Further details can also be found in the wiki.
- It is possible to develop C++, Qt and KDE software using Eclipse as your IDE. Further details can be found on the Eclipse page.