User:Donnguyen
Building KDE/Plasma 5 on Ubuntu 14.04 LTS
The aim of this guide is to help you build KDE Plasma 5 for development and/or use. These instructions are valid as of 31 Aug 2016.
Install a recent version of cmake
sudo apt-get install build-essential wget https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz tar -zxvf cmake-3.6.1.tar.gz cd cmake-3.6.1/ ./configure make sudo apt-get install checkinstall sudo checkinstall
Upgrade libwayland-dev and network-manager from PPA's
Upgrade libwayland-dev and related dependencies:
sudo add-apt-repository ppa:xorg-edgers/ppa sudo apt-get update sudo apt-get install libwayland-dev
Upgrade network-manager and related dependencies:
sudo add-apt-repository ppa:9v-shaun-42/networkmanager sudo apt-get update sudo apt-get install network-manager
Install Qt 5.7.0 using installer
Download and install to default location: /opt/Qt5.7.0
sudo ./qt-opensource-linux-x64-5.7.0.run
Choose default options and include "Sources" option
Install some build dependencies
sudo apt-get build-dep kde-workspace qtbase5-dev
Build Qtwebkit
Install dependencies for building Qtwebkit
sudo apt-get install flex bison gperf libicu-dev libxslt-dev ruby
Install git
sudo apt-get install git
Clone and build qtwebkit
git clone git://code.qt.io/qt/qtwebkit.git --branch 5.7.0 mkdir qtwebkit-build cd qtwebkit-build /opt/Qt5.7.0/5.7/gcc_64/bin/qmake ../qtwebkit make sudo make install
Setup kdesrc-build and .kdesrc-buildrc
Most of this section is taken from https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source Git remote prefix Let's setup a "kde:" prefix for git commands. Add the following text to your ~/.gitconfig: [url "git://anongit.kde.org/"]
insteadOf = kde:
[url "ssh://git@git.kde.org/"]
pushInsteadOf = kde:
mkdir ~/kdesrc cd ~/kdesrc
git clone kde:kdesrc-build
cd kdesrc-build
cp kdesrc-buildrc-kf5-sample ~/.kdesrc-buildrc
- Install a symlink of kdesrc-build to a location in PATH
mkdir ~/bin ln -s $PWD/kdesrc-build ~/bin export PATH=~/bin:$PATH
Configure kdesrc-build edit~/.kdesrc-buildrcReplace/path/to/kdesrc-build/kf5-qt5-build-includewith~/kdesrc/kdesrc-build/kf5-qt5-build-includein ~/.kdesrc-buildrc file Addignore-kde-structure trueandmake-options -jNto the global section in ~/.kdesrc-buildrcglobal
... ignore-kde-structure true make-options -j5 # NOTE: 5 is the number of jobs, this should usually be (number-of-cpu-cores + 1) #stop-on-failure true # Stop kdesrc-build ...
end global
Set qtdir to output of qmake –v minus the lib
kdedir /opt/kde-5 # Where to install KF5-based software qtdir /opt/Qt5.7.0/5.7/gcc_64 # Where to find Qt5
Setup baloo section to fix compile error
options baloo cmake-options -DCMAKE_CXX_FLAGS="-lc" end options
kdesrc-build needs xml-parser-perl
sudo apt-get install libxml-parser-perl
Build plasma-desktop
Some more dependencies
sudo apt-get build-dep polkit-qt-1 sudo apt-get install libgif-dev sudo apt-get install libnm-glib-dev sudo apt-get install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev sudo apt-get install libattr1-dev sudo apt-get install liblmdb-dev sudo apt-get install libxapian-dev
Download and install some packages from Xenial:
mkdir extra-deb cd extra-deb wget http://mirrors.kernel.org/ubuntu/pool/main/libx/libxkbcommon/libxkbcommon-dev_0.5.0-1ubuntu2_amd64.deb wget http://mirrors.kernel.org/ubuntu/pool/main/libx/libxkbcommon/libxkbcommon0_0.5.0-1ubuntu2_amd64.deb wget http://mirrors.kernel.org/ubuntu/pool/main/libe/libepoxy/libepoxy-dev_1.3.1-1_amd64.deb wget http://mirrors.kernel.org/ubuntu/pool/main/libe/libepoxy/libepoxy0_1.3.1-1_amd64.deb dpkg -i *.deb
Build:
kdesrc-build --include-dependencies plasma-desktop
Build some extra applications
kdesrc-build applications