Get Involved/development - KDE Community Wiki

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Get Involved/development - KDE Community Wiki https://community.kde.org/Get_Involved/develo...

Get Involved/development
< Get Involved

By joining the ranks of KDE developers, you will get to implement new features and defeat bugs
both daunting and simple, all while collaborating to make coherent and stable releases.
Developers collaborate in teams based on what area they are working in. These can be small
teams working on a single application, up to large teams working on a group of related pieces of
software. Many developers are in more than one team.

KDE runs or participates in several mentoring programs to help new developers, including an
informal list of people who are willing to help newcomers get started. See the Mentoring page
for more details.

Information
While any operating system can be used to patch or develop KDE software, it's easiest if you use a Linux distribution that
provides relatively recent versions of Qt and KDE Frameworks, such as Arch/Manjaro, Fedora, KDE Neon, openSUSE
Tumbleweed, or non-LTS versions of Ubuntu.

Support for distros that ship older software (such as Debian, Ubuntu/Kubuntu 18.04, and openSUSE Leap 15) is still
experimental and you may have a better experience developing with one of the distributions mentioned above in a virtual
machine.

Contents
1 New to C++/Qt software development?
2 One-time setup: your development environment
2.1 Install basic tools
2.2 Enable the source repositories
2.3 Configure Git
2.4 Set up kdesrc-build
2.5 Set up Qt
2.6 Download non-KDE dependencies
3 Build some software
3.1 Applications
3.2 Frameworks
3.3 Plasma
3.4 How to solve build problems
4 Choose what to do
5 Test your changes
6 Submit a patch
7 Communicate with the team
8 Next steps
9 Best practices & other useful information

New to C++/Qt software development?
Most KDE software is written in C++ using the Qt toolkit and KDE Frameworks. Though prior experience with these technologies or other
programming languages is helpful, you don't need to be a C++ programmer to get started! For example, no programming knowledge
whatsoever is required to do things like improve text labels.

If you'd like to dive deeper, the Qt wiki contains a list of online books for learning Qt programming. Qt also provides lots of examples
you can look at. Information about KDE Frameworks can be found on the TechBase wiki, and a book is available.

One-time setup: your development environment
To build software, you need a development environment: a set of tools that allows you to access and edit the source code, compile it
into a form that the computer can run, and deploy it to a safe location. We will now go through the process of setting one up. To
accomplish these tasks, you will need to enter commands using a terminal program, such as KDE's Konsole (but any terminal program
will suffice).

If you're not familiar with the command line interface, you can find a reasonable tutorial here. However advanced command-line skills
are not required, and you will learn what you need along the way!

1 of 2 10/5/19, 5:00 PM
Get Involved/development - KDE Community Wiki https://community.kde.org/Get_Involved/develo...

2 of 2 10/5/19, 5:00 PM

You might also like