Krita/debbuild: Difference between revisions

From KDE Community Wiki
No edit summary
Line 1: Line 1:
This guide explains how to build Krita from standard KDE Frameworks 5 packages provided with Debian/Ubuntu.   
This guide explains how to build Krita from standard Qt 5 and KDE Frameworks 5 development packages provided with Debian/Ubuntu.   


You must begin with a C++ development toolkit including gcc, git, and cmake.  
You must begin with a C++ development toolkit including gcc, git, and cmake.


It is fundamentally [https://community.kde.org/Calligra/Building/3 similiar to building Calligra], but three differences. I am too lazy to copy all of those instructions into this page, it would be nice if you did it though. =)
It is fundamentally [https://community.kde.org/Calligra/Building/3 similiar to building Calligra], but three differences. I am too lazy to copy all of those instructions into this page, it would be nice if you did it though. <tt>=)</tt>


=== Krita's dependencies ===
=== Krita's dependencies ===
The first difference is that Krita's dependencies are different.


sudo apt install.... (drumroll please)
The first difference is that Krita's dependencies are different. Drumroll, please:
 
  extra-cmake-modules  kdelibs5-dev libkf5archive-dev libkf5completion-dev libkf5config-dev libkf5coreaddons-dev
  sudo apt install extra-cmake-modules  kdelibs5-dev libkf5archive-dev libkf5completion-dev libkf5config-dev
libkf5guiaddons-dev libkf5i18n-dev libkf5itemmodels-dev libkf5itemviews-dev libkf5widgetsaddons-dev  
libkf5coreaddons-dev libkf5guiaddons-dev libkf5i18n-dev libkf5itemmodels-dev libkf5itemviews-dev
libkf5windowsystem-dev libkf5kiocore5 qtbase5-dev libqt5svg5-dev qtdeclarative5-dev libqt5x11extras5-dev  
libkf5widgetsaddons-dev libkf5windowsystem-dev libkf5kiocore5 qtbase5-dev libqt5svg5-dev
libqt5opengl5-dev libeigen3-dev libxi-dev libboost-all-dev libopenexr-dev vc-dev libexiv2-dev libgsl0-dev
qtdeclarative5-dev libqt5x11extras5-dev libqt5opengl5-dev libeigen3-dev libxi-dev libboost-all-dev
liblcms2-dev libpoppler-qt5-dev shared-mime-info kde-style-oxygen-qt5
libopenexr-dev vc-dev libexiv2-dev libgsl0-dev liblcms2-dev libpoppler-qt5-dev shared-mime-info





Revision as of 23:42, 23 October 2015

This guide explains how to build Krita from standard Qt 5 and KDE Frameworks 5 development packages provided with Debian/Ubuntu.

You must begin with a C++ development toolkit including gcc, git, and cmake.

It is fundamentally similiar to building Calligra, but three differences. I am too lazy to copy all of those instructions into this page, it would be nice if you did it though. =)

Krita's dependencies

The first difference is that Krita's dependencies are different. Drumroll, please:

sudo apt install extra-cmake-modules  kdelibs5-dev libkf5archive-dev libkf5completion-dev libkf5config-dev
libkf5coreaddons-dev libkf5guiaddons-dev libkf5i18n-dev libkf5itemmodels-dev libkf5itemviews-dev
libkf5widgetsaddons-dev libkf5windowsystem-dev libkf5kiocore5 qtbase5-dev libqt5svg5-dev
qtdeclarative5-dev libqt5x11extras5-dev libqt5opengl5-dev libeigen3-dev libxi-dev libboost-all-dev
libopenexr-dev vc-dev libexiv2-dev libgsl0-dev liblcms2-dev libpoppler-qt5-dev shared-mime-info


Technically you can get away without each and every one. KIO and QtDeclarative are for Krita Sketch. Poppler is for PDF import. GSL is for the transform tool. Vc is for SIMD accelerated painting. SharedMimeInfo is for determining file types. If you want to build Krita without these features, you can omit the package.


Downloading Krita's repository

The second difference is that Krita's source repository is different.

cd ~/kf5/src               (Or, wherever you want to download the source code)
git clone kde:krita


CMake command

Krita does not use productsets any longer. The Calligra build guide may remove the PACKAGERS_BUILD setting too, since it was related to Vc, which Calligra no longer uses. This will turn off the packagers build, the tests, and the docbook, so that building is faster. RelWithDebInfo optimization level is nearly always good enough for everyday debugging, but it is also fast enough to paint with. =)

cd ~/kf5/build/krita
cmake -DCMAKE_INSTALL_PREFIX=$HOME/kde/inst5 $HOME/kde/src/calligra -DCMAKE_BUILD_TYPE=RelWithDebInfo 
      -DBUILD_TESTING=OFF -DPACKAGERS_BUILD=OFF -DBUILD_doc=OFF
make -j12

Other things to note

If you are OK installing in your home folder, with -DCMAKE_INSTALL_PREFIX=~/, you need only one environment variable to run Krita:

export XDG_DATA_DIRS=$HOME/kde/inst5/share:$XDG_DATA_DIRS

If you plan to develop Krita, you can get faster builds with Ninja and Gold Linker. See the Calligra building page above for more information.