kdesrc-build
Build KDE software from source code
TLDR
Initialize kdesrc-build
Compile a KDE component and its dependencies from source
Compile a component without updating its local code and without compiling its dependencies
Refresh the build directories before compiling
Resume compilation from a specific dependency
Run a component with a specified executable name
Build all configured components
Use system libraries in place of a component if it fails to build
SYNOPSIS
kdesrc-build [options] [module1 [module2 ...]]
PARAMETERS
--help
Display help and exit
--version
Show version information
--rcfile <FILE>
Use alternate config file
--include-dependencies
Build dependencies of specified modules
--network-test
Test Git access before building
--no-src
Skip source fetching
--no-build
Skip compilation
--no-install
Skip installation
--resume
Resume from last failure point
--start-at <MODULE>
Start building from specified module
--stop-at <MODULE>
Stop after specified module
--prefix <DIR>
Set installation prefix
--install-mode <MODE>
Set mode: user, system, or prefix
--verbose
Increase output verbosity
--debug
Enable debug logging
--list-changes
Show changes since last build
--jobs <N>
Set parallel build jobs (default from config)
DESCRIPTION
kdesrc-build is a powerful Perl-based tool designed to simplify the process of building KDE Plasma and related software from source code on Linux systems.
It automates key steps including downloading source from KDE's Git repositories, resolving module dependencies, configuring with CMake, compiling, and installing. Users configure it via a ~/.kdesrc-buildrc file, specifying repositories, platforms (e.g., master, stable), modules to build, and installation options like prefix or fakeroot.
Ideal for developers wanting the latest KDE features or custom builds, it supports parallel builds, resuming interrupted sessions, and selective module building. It handles complex inter-dependencies across hundreds of modules, ensuring correct build order. Built-in features like change logs (--list-changes) and network tests aid troubleshooting.
While flexible, it requires prerequisites like Git, Perl, CMake, and compilers. It's actively maintained within KDE's developer tools ecosystem.
CAVEATS
Requires Perl, Git, CMake, compilers; builds are time-intensive and disk-heavy. Config file mandatory for full use. System installs need root/sudo.
CONFIGURATION
Edit ~/.kdesrc-buildrc for modules, repos, and options like make-options -j$(nproc).
EXAMPLE USAGE
kdesrc-build plasma-desktop --include-dependencies
Builds Plasma Desktop and deps.
HISTORY
Originally developed by Michael Pyne in 2007 for KDE4; evolved for Plasma frameworks. Maintained in KDE's kdesrc-build Git repo, with regular updates for new Qt/KF versions.


