Projects/K3b
Getting Started in K3b Development
Setting Up Environment
Create target install directory. For the sake of example we will assume your home directory is /home/joe and you will install your compiled K3b to /home/joe/k3b/install. Add following lines to your ~/.bashrc file:
export K3B_INSTALL_PREFIX=/home/joe/k3b/install
export KDEDIRS=${K3B_INSTALL_PREFIX}:${KDEDIRS}
export PATH=${K3B_INSTALL_PREFIX}/bin:${PATH}
export XDG_DATA_DIRS=${K3B_INSTALL_PREFIX}/share:${XDG_DATA_DIRS}
Relogin to let changes take effect.
Getting Source Code
K3b sources code is hosted in KDE Subversion repository. It is a part of KDE Extragear
If you don't have a SVN account you can checkout the source code using anonymous access repository:
svn checkout svn://anonsvn.kde.org/home/kde/trunk/extragear/multimedia/k3b .
If you have SVN account you should go the other way:
svn checkout svn+ssh://[email protected]/home/kde/trunk/extragear/multimedia/k3b .
This will give you read-write access to the repository.
Compilation
K3b, as most KDE applications, uses CMake for configuration and compilation of source code.
First the build directory should be created.
mkdir build
cd build
It is guaranteed all files created during build will be placed in this directory. That means that if you want to clean up source tree after build the only thing you need to do is to remove build directory.
Now we need to configure the source tree. This have to be done only once, later this step will be invoked automatically when necessary. If you are familiar with Autotools this step corresponds to ./configure command.
cmake .. \
-DCMAKE_INSTALL_PREFIX=/home/joe/k3b/install \
-DKDE4_AUTH_POLICY_FILES_INSTALL_DIR=/home/joe/k3b/install/share/polkit-1/actions \
-DK3B_DEBUG=ON \
-DCMAKE_BUILD_TYPE=Debug
CMake will search for all required and optional libraries.
Finally to compile the source code and install it you should call:
make && make install
After that compiled K3b will be placed in /home/joe/k3b/install directory. Now you can run K3b by simply typing in the console:
k3b
See Also
- K3b community wiki – for roadmap and other organizational information