This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Building KDE brings errors

Tags: None
(comma "," separated)
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Building KDE brings errors

Wed Oct 07, 2020 6:21 am
Hello,

Please help me build KDE.
I have done it successfully two months ago, but now I get errors I don't know to surpass.

I have a fully upgraded KDE Neon developer edition, I have started from an empty setup, I've followed this guide here: https://community.kde.org/Get_Involved/development:
1. I have followed "Set up kdesrc-build" section
2. I have followed "Download non-KDE dependencies" section
3. I have enabled QT build in ~/.kdesrc-buildrc:

Code: Select all
# This file controls options to apply when configuring/building modules, and
# controls which modules are built in the first place.
# List of all options: https://go.kde.org/u/ksboptions

global
    # Paths

    kdedir ~/kde/usr # Where to install KF5-based software
#
    qtdir  ~/kde/qt5 # Where to install Qt5 if kdesrc-build supplies it

    source-dir ~/kde/src   # Where sources are downloaded
    build-dir  ~/kde/build # Where the source build is run

    ignore-kde-structure true # Use flat structure

    # Will pull in KDE-based dependencies only, to save you the trouble of
    # listing them all below
    include-dependencies true

    cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo

    # kdesrc-build sets 2 options which you can use in options like make-options or set-env
    # to help manage the number of compile jobs that # happen during a build:
    #
    # 1. num-cores, which is just the number of detected CPU cores, and can be passed
    #    to tools like make (needed for parallel build) or ninja (completely optional).
    #
    # 2. num-cores-low-mem, which is set to largest value that appears safe for
    #    particularly heavyweight modules based on total memory, intended for
    #    modules like qtwebengine
    num-cores 4

    num-cores-low-mem 4

    make-options  -j ${num-cores}
end global

# With base options set, the remainder of the file is used to define modules to build, in the
# desired order, and set any module-specific options.
#
# Modules may be grouped into sets, and this is the normal practice.
#
# You can include other files inline using the "include" command. We do this here
# to include files which are updated with kdesrc-build.

# Common options that should be set for some KDE modules no matter how
# kdesrc-build finds them. Do not comment these out unless you know
# what you are doing.
include ~/kde/src/kdesrc-build/kf5-common-options-build-include

# Qt and some Qt-using middleware libraries. Uncomment if your distribution's Qt
# tools are too old but be warned that Qt take a long time to build!
#
include ~/kde/src/kdesrc-build/qt5-build-include
#
include ~/kde/src/kdesrc-build/custom-qt5-libs-build-include

# KF5 and Plasma :)
include ~/kde/src/kdesrc-build/kf5-qt5-build-include

# To change options for modules that have already been defined, use an
# 'options' block. See kf5-common-options-build-include for an example


4. I have followed "Plasma" and "Plasma Desktop" sections and I have issued:

Code: Select all
kdesrc-build plasma-desktop systemsettings ksysguard kinfocenter kmenuedit plasma-workspace plasma-framework plasma-nm plasma-pa plasma-thunderbolt plasma-vault plasma-disks plasma-workspace-wallpapers kdeplasma-addons krunner milou kwin kscreen sddm-kcm breeze discover print-manager plasma-sdk kaccounts-integration kaccounts-providers kdeconnect-kde plasma-browser-integration xdg-desktop-portal-kde khotkeys --include-dependencies


It failed. I have tried with " --refresh-build" too.

It keeps failing with:

Code: Select all
...

<<<  PACKAGES SUCCESSFULLY BUILT  >>>
Built 106 modules
 
Removing 2 out of 2 old log directories...

<<<  PACKAGES FAILED TO BUILD  >>>
kwindowsystem - ~/kde/src/log/2020-10-06-03/kwindowsystem/cmake.log
kglobalaccel - ~/kde/src/log/2020-10-06-03/kglobalaccel/cmake.log
kio - ~/kde/src/log/2020-10-06-03/kio/cmake.log
kidletime - ~/kde/src/log/2020-10-06-03/kidletime/cmake.log
plasma-framework - ~/kde/src/log/2020-10-06-03/plasma-framework/cmake.log
kdelibs4support - ~/kde/src/log/2020-10-06-03/kdelibs4support/cmake.log
khtml - ~/kde/src/log/2020-10-06-03/khtml/cmake.log
breeze - ~/kde/src/log/2020-10-06-03/breeze/cmake.log
kscreenlocker - ~/kde/src/log/2020-10-06-03/kscreenlocker/cmake.log
libkscreen - ~/kde/src/log/2020-10-06-03/libkscreen/cmake.log
kwin - ~/kde/src/log/2020-10-06-03/kwin/cmake.log
oxygen - ~/kde/src/log/2020-10-06-03/oxygen/cmake.log
powerdevil - ~/kde/src/log/2020-10-06-03/powerdevil/cmake.log
khotkeys - ~/kde/src/log/2020-10-06-03/khotkeys/cmake.log
plasma-desktop - ~/kde/src/log/2020-10-06-03/plasma-desktop/cmake.log
kaccounts-providers - ~/kde/src/log/2020-10-06-03/kaccounts-providers/cmake.log
kdeconnect-kde - ~/kde/src/log/2020-10-06-03/kdeconnect-kde/cmake.log

The following top 5 may be the most important to fix to get the build to work, listed in order of 'probably most interesting' to 'probably least interesting' failure:

        kwindowsystem
        kglobalaccel
        kio
        kidletime
        plasma-framework
        * Installing "sample-kde-env-master.sh" would overwrite an existing file:
        *  /home/msdobrescu/.config/kde-env-master.sh
        * If this is acceptable, please delete the existing file and re-run,
        * or pass --delete-my-settings and re-run.

:-(
Your logs are saved in file: [...]


I have moved /home/msdobrescu/.config/kde-env-master.sh, but failed again, the newly created file is exactly the same as the initial one, so no new content there to help.

The error logs look like:

Code: Select all
# kdesrc-build running: 'cmake' '/home/msdobrescu/kde/src/kwin' '-G' 'Unix Makefiles' '-DCMAKE_BUILD_TYPE=RelWithDebInfo' '-DCMAKE_CXX_FLAGS:STRING=-pipe' '-DCMAKE_INSTALL_PREFIX=/home/msdobrescu/kde/usr' '-DCMAKE_PREFIX_PATH=/home/msdobrescu/kde/qt5'
# from directory: /home/msdobrescu/kde/build/kwin
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
CMake Error at /home/msdobrescu/kde/qt5/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package):
  Could not find a package configuration file provided by "Qt5X11Extras" with
  any of the following names:

    Qt5X11ExtrasConfig.cmake
    qt5x11extras-config.cmake

  Add the installation prefix of "Qt5X11Extras" to CMAKE_PREFIX_PATH or set
  "Qt5X11Extras_DIR" to a directory containing one of the above files.  If
  "Qt5X11Extras" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:21 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/msdobrescu/kde/build/kwin/CMakeFiles/CMakeOutput.log".
See also "/home/msdobrescu/kde/build/kwin/CMakeFiles/CMakeError.log".


What am I missing?
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 10:30 am
Hello!

You need to provide the header files missing. The error log gives you hints. In your case it needs Qt5X11Extras. You can search the missing stuff on the ubuntu packages website: https://packages.ubuntu.com/search?keywords=X11+Qt5+Extra&searchon=names&suite=focal&section=all which finds libqt5x11extras5-dev.

Install this package and start kdesrc-build again.

You can find a (not up to date?) list with required header files here: Install the KDE dependencies
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 10:39 am
Hello, thanks for answering, but I have it installed. I've run the script for Neon from here: https://community.kde.org/Guidelines_an ... 2C_Kubuntu, the package managers show ibqt5x11extras5-dev as installed. There must be something else, like a path problem.
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 3:12 pm
Out of curiosity, I have modified kdesrc-build to request QT 5.15.1. The errors are similar:

Code: Select all
<<<  PACKAGES SUCCESSFULLY BUILT  >>>
Built 106 modules
 
Removing 1 out of 1 old log directories...

<<<  PACKAGES FAILED TO BUILD  >>>
kwindowsystem - ~/kde/src/log/2020-10-07-02/kwindowsystem/cmake.log
kglobalaccel - ~/kde/src/log/2020-10-07-02/kglobalaccel/cmake.log
kio - ~/kde/src/log/2020-10-07-02/kio/cmake.log
kidletime - ~/kde/src/log/2020-10-07-02/kidletime/cmake.log
plasma-framework - ~/kde/src/log/2020-10-07-02/plasma-framework/cmake.log
kdelibs4support - ~/kde/src/log/2020-10-07-02/kdelibs4support/cmake.log
khtml - ~/kde/src/log/2020-10-07-02/khtml/cmake.log
breeze - ~/kde/src/log/2020-10-07-02/breeze/cmake.log
kscreenlocker - ~/kde/src/log/2020-10-07-02/kscreenlocker/cmake.log
libkscreen - ~/kde/src/log/2020-10-07-02/libkscreen/cmake.log
kwin - ~/kde/src/log/2020-10-07-02/kwin/cmake.log
oxygen - ~/kde/src/log/2020-10-07-02/oxygen/cmake.log
powerdevil - ~/kde/src/log/2020-10-07-02/powerdevil/cmake.log
khotkeys - ~/kde/src/log/2020-10-07-02/khotkeys/cmake.log
plasma-desktop - ~/kde/src/log/2020-10-07-02/plasma-desktop/cmake.log
kaccounts-providers - ~/kde/src/log/2020-10-07-02/kaccounts-providers/cmake.log
kdeconnect-kde - ~/kde/src/log/2020-10-07-02/kdeconnect-kde/cmake.log

The following top 5 may be the most important to fix to get the build to work, listed in order of 'probably most interesting' to 'probably least interesting' failure:

        kwindowsystem
        kglobalaccel
        kio
        kidletime
        plasma-framework

:-(
Your logs are saved in file:///home/msdobrescu/kde/src/log/2020-10-07-02


An error log sample:

Code: Select all
# kdesrc-build running: 'cmake' '/home/msdobrescu/kde/src/breeze' '-G' 'Unix Makefiles' '-DCMAKE_BUILD_TYPE=RelWithDebInfo' '-DCMAKE_CXX_FLAGS:STRING=-pipe' '-DCMAKE_INSTALL_PREFIX=/home/msdobrescu/kde/usr' '-DCMAKE_PREFIX_PATH=/home/msdobrescu/kde/qt5'
# from directory: /home/msdobrescu/kde/build/breeze
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
Installing in /home/msdobrescu/kde/usr. Run /home/msdobrescu/kde/build/breeze/prefix.sh to set the environment for breeze.
-- Looking for __GLIBC__
-- Looking for __GLIBC__ - found
-- Performing Test _OFFT_IS_64BIT
-- Performing Test _OFFT_IS_64BIT - Success
-- Performing Test HAVE_DATE_TIME
-- Performing Test HAVE_DATE_TIME - Success
-- Found KF5CoreAddons: /home/msdobrescu/kde/usr/lib/x86_64-linux-gnu/cmake/KF5CoreAddons/KF5CoreAddonsConfig.cmake (found version "5.75.0")
-- Found KF5GuiAddons: /home/msdobrescu/kde/usr/lib/x86_64-linux-gnu/cmake/KF5GuiAddons/KF5GuiAddonsConfig.cmake (found version "5.75.0")
-- Found KF5ConfigWidgets: /home/msdobrescu/kde/usr/lib/x86_64-linux-gnu/cmake/KF5ConfigWidgets/KF5ConfigWidgetsConfig.cmake (found version "5.75.0")
-- Found KF5WindowSystem: /usr/lib/x86_64-linux-gnu/cmake/KF5WindowSystem/KF5WindowSystemConfig.cmake (found version "5.75.0")
-- Found Gettext: /usr/bin/msgmerge (found version "0.19.8.1")
-- Found KF5I18n: /home/msdobrescu/kde/usr/lib/x86_64-linux-gnu/cmake/KF5I18n/KF5I18nConfig.cmake (found version "5.75.0")
-- Found KF5IconThemes: /home/msdobrescu/kde/usr/lib/x86_64-linux-gnu/cmake/KF5IconThemes/KF5IconThemesConfig.cmake (found version "5.75.0")
-- Found KF5: success (found version "5.75.0") found components: CoreAddons GuiAddons ConfigWidgets WindowSystem I18n IconThemes
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Found XCB_XCB: /usr/lib/x86_64-linux-gnu/libxcb.so (found version "1.14")
-- Found XCB: /usr/lib/x86_64-linux-gnu/libxcb.so (found version "1.14") found components: XCB
-- Warning: Property URL already set to "https://xcb.freedesktop.org/", overriding it with "https://xcb.freedesktop.org"
CMake Error at /home/msdobrescu/kde/qt5/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package):
  Could not find a package configuration file provided by "Qt5X11Extras" with
  any of the following names:

    Qt5X11ExtrasConfig.cmake
    qt5x11extras-config.cmake

  Add the installation prefix of "Qt5X11Extras" to CMAKE_PREFIX_PATH or set
  "Qt5X11Extras_DIR" to a directory containing one of the above files.  If
  "Qt5X11Extras" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  kdecoration/CMakeLists.txt:19 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/msdobrescu/kde/build/breeze/CMakeFiles/CMakeOutput.log".


I start to think it's related to the build scripts or parameters passed to QT build system.
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 5:06 pm
I've setup a virtual kde neon dev edition and tried it. After installing the headers everything compiled as expected (but installation failed because of missing root permission). Must be a problem with your custom Qt as I just used the one provided by neon. Did it compile without problems?
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 5:44 pm
Thank you, I think that too.

i am building with 5.14 now, out of curiosity. Next thing is to disable the custom QT build (which is provided by kdesrc-build BTW...).
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 6:26 pm
I have currently changed the setup to:
Code: Select all
global
    kdedir ~/kde/usr # Where to install KF5-based software
    qtdir  ~/kde/qt5 # Where to install Qt5 if kdesrc-build supplies it
    source-dir ~/kde/src   # Where sources are downloaded
    build-dir  ~/kde/build # Where the source build is run
    ignore-kde-structure true # Use flat structure
    include-dependencies true
    cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo
    num-cores 2
    num-cores-low-mem 2
    make-options  -j ${num-cores}
end global
include /home/user/kdesrc-build/kf5-common-options-build-include
include /home/user/kdesrc-build/kf5-qt5-build-include
which is still running.

The system was the current development iso (as I downloaded it today). Updated with `sudo apt update && sudo apt full-upgrade && sudo apt autoremove`.
After rebooting I installed the current header files:
Code: Select all
sudo apt install autoconf baloo-kf5-dev intltool bison breeze-dev build-essential bzr cmake cmake-data debhelper dh-apparmor doxygen extra-cmake-modules flex fontforge gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0 git gperf icu-devtools kded5-dev kgendesignerplugin kinit-dev kirigami2-dev kross-dev kscreenlocker-dev kwin-dev libaccounts-glib-dev libappstreamqt-dev libapr1 libaprutil1 libarchive-dev libasound2-dev libattr1-dev libboost-dev libbz2-dev libcanberra-dev libcap-dev libclang-dev libcln-dev libcups2-dev libcurl4-gnutls-dev libegl1-mesa-dev libepoxy-dev libexiv2-dev libfakekey-dev libfontconfig1-dev libfreetype6-dev libgbm-dev libgconf2-dev libgcrypt20-dev libgif-dev libglib2.0-dev libgmp-dev libgmpxx4ldbl libgpgme11-dev libgps-dev libgrantlee5-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk-3-dev libhunspell-dev libibus-1.0-dev libicu-dev libjpeg8-dev libjpeg-dev libjpeg-turbo8-dev libjson-perl libkaccounts-dev libkdecorations2-dev libkeduvocdocument-dev libkf5activities-dev libkf5activitiesstats-dev libkf5akonadicalendar-dev libkf5akonadicontact-dev libkf5akonadi-dev libkf5akonadimime-dev libkf5akonadinotes-dev libkf5akonadisearch-dev libkf5alarmcalendar-dev libkf5archive-dev libkf5attica-dev libkf5auth-dev libkf5baloowidgets-dev libkf5blog-dev libkf5bluezqt-dev libkf5bookmarks-dev libkf5calendarcore-dev libkf5calendarsupport-dev libkf5calendarutils-dev libkf5cddb-dev libkf5codecs-dev libkf5compactdisc-dev libkf5completion-dev libkf5config-dev libkf5configwidgets-dev libkf5contacteditor-dev libkf5contacts-dev libkf5coreaddons-dev libkf5crash-dev libkf5dbusaddons-dev libkf5declarative-dev libkf5dnssd-dev libkf5doctools-dev libkf5emoticons-dev libkf5eventviews-dev libkf5filemetadata-dev libkf5followupreminder-dev libkf5globalaccel-dev libkf5grantleetheme-dev libkf5gravatar-dev libkf5guiaddons-dev libkf5holidays-dev libkf5i18n-dev libkf5iconthemes-dev libkf5identitymanagement-dev libkf5idletime-dev libkf5imap-dev libkf5incidenceeditor-dev libkf5itemmodels-dev libkf5itemviews-dev libkf5jobwidgets-dev libkf5jsembed-dev libkf5kaddressbookgrantlee-dev libkf5kaddressbookimportexport-dev libkf5kcmutils-dev libkf5kdcraw-dev libkf5kdegames-dev libkf5kdelibs4support-dev libkf5kdepimdbusinterfaces-dev libkf5kexiv2-dev libkf5kgeomap-dev libkf5khtml-dev libkf5kio-dev libkf5kipi-dev libkf5kjs-dev libkf5kmahjongglib-dev libkf5konq-dev libkf5kontactinterface-dev libkf5ksieve-dev libkf5ldap-dev libkf5libkdepim-dev libkf5libkleo-dev libkf5mailcommon-dev libkf5mailimporter-dev libkf5mailtransport-dev libkf5mbox-dev libkf5mediaplayer-dev libkf5mediawiki-dev libkf5messagecomposer-dev libkf5messagecore-dev libkf5messagelist-dev libkf5messageviewer-dev libkf5mime-dev libkf5mimetreeparser-dev libkf5networkmanagerqt-dev libkf5newstuff-dev libkf5notifications-dev libkf5notifyconfig-dev libkf5package-dev libkf5parts-dev libkf5people-dev libkf5pimcommon-dev libkf5pimtextedit-dev libkf5plasma-dev libkf5plotting-dev libkf5prison-dev libkf5pty-dev libkf5purpose-dev libkf5qqc2desktopstyle-dev libkf5runner-dev libkf5sane-dev libkf5screen-dev libkf5sendlater-dev libkf5service-dev libkf5solid-dev libkf5sonnet-dev libkf5style-dev libkf5su-dev libkf5syndication-dev libkf5syntaxhighlighting-dev libkf5sysguard-dev libkf5templateparser-dev libkf5texteditor-dev libkf5textwidgets-dev libkf5threadweaver-dev libkf5tnef-dev libkf5unitconversion-dev libkf5wallet-dev libkf5wayland-dev libkf5webengineviewer-dev libkf5webkit-dev libkf5widgetsaddons-dev libkf5windowsystem-dev libkf5xmlgui-dev libkf5xmlrpcclient-dev libktorrent-dev liblcms2-dev liblmdb-dev libmlt-dev libmlt++-dev libnm-dev libpackagekitqt5-dev libpam-dev libphonon4qt5-dev libphonon4qt5experimental-dev libpng-dev libpolkit-agent-1-dev libpolkit-gobject-1-dev libpulse-dev libpwquality-dev libqalculate-dev libqca-qt5-2-dev libqrencode-dev libqt5sensors5 libqt5sensors5-dev libqt5svg5-dev libqt5texttospeech5-dev libqt5webkit5-dev libqt5x11extras5-dev libqt5xmlpatterns5-dev libqt5networkauth5-dev libqt5waylandclient5-dev libraw1394-dev libscim-dev libserf-1-1 libsm-dev libssl-dev libsvn1 libtiff5-dev libudev-dev libusb-dev libvlccore-dev libvlc-dev libvncserver-dev libwww-perl libx11-dev libx11-xcb-dev libxapian-dev libxcb1-dev libxcb-composite0-dev libxcb-cursor0 libxcb-cursor-dev libxcb-damage0-dev libxcb-dpms0 libxcb-dpms0-dev libxcb-ewmh2 libxcb-ewmh-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-record0-dev libxcb-render-util0-dev libxcb-res0 libxcb-res0-dev libxcb-screensaver0 libxcb-screensaver0-dev libxcb-shm0-dev libxcb-util0-dev libxcb-xf86dri0 libxcb-xf86dri0-dev libxcb-xinerama0 libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xtest0-dev libxcb-xv0 libxcb-xv0-dev libxcb-xvmc0 libxcb-xvmc0-dev libxcursor-dev libxft-dev libxi-dev libxkbfile-dev libxml2-dev libxml-parser-perl libxrender-dev libxslt1-dev libxslt-dev llvm modemmanager-dev modemmanager-qt-dev network-manager-dev openbox oxygen-icon-theme perl-modules pkg-config pkg-kde-tools plasma-workspace-dev po-debconf qt5-qmake qtbase5-dev qtbase5-dev-tools qtbase5-private-dev qtdeclarative5-dev qtmultimedia5-dev qtquickcontrols2-5-dev qtscript5-dev qttools5-dev qtxmlpatterns5-dev-tools shared-mime-info subversion texinfo xauth xcb-proto xserver-xorg-dev xserver-xorg-input-evdev-dev xserver-xorg-input-libinput-dev xserver-xorg-input-synaptics-dev xsltproc xvfb libkdsoap-dev qml-module-qtquick-controls qml-module-qtquick-controls-dbgsym qml-module-qtquick-controls2 qml-module-qtquick-controls2-dbgsym qml-module-qtquick-dialogs qml-module-qtquick-dialogs-dbgsym qml-module-qtquick-extras qml-module-qtquick-extras-dbgsym qml-module-qtquick-layouts qml-module-qtquick-layouts-dbgsym qml-module-qtquick-localstorage qml-module-qtquick-localstorage-dbgsym qml-module-qtquick-particles2 qml-module-qtquick-particles2-dbgsym qml-module-qtquick-pdf qml-module-qtquick-pdf-dbgsym qml-module-qtquick-privatewidgets qml-module-qtquick-privatewidgets-dbgsym qml-module-qtquick-scene2d qml-module-qtquick-scene2d-dbgsym qml-module-qtquick-scene3d qml-module-qtquick-scene3d-dbgsym qml-module-qtquick-shapes qml-module-qtquick-shapes-dbgsym qml-module-qtquick-templates2 qml-module-qtquick-templates2-dbgsym qml-module-qtquick-virtualkeyboard qml-module-qtquick-virtualkeyboard-dbgsym qml-module-qtquick-window2 qml-module-qtquick-window2-dbgsym qml-module-qtquick-xmllistmodel qml-module-qtquick-xmllistmodel-dbgsym qml-module-qtquick2 qml-module-qtquick2-dbgsym libqt5qml5 zlib1g-dev libxfixes-dev libxcb-xfixes0-dev libassuan-dev plasma-wayland-protocols

Three packages were replaced and I added those mentioned on the website we both used, so this is a nearly matching list.

Setting up kdesrc:
Code: Select all
user@KDEneon:~$ git clone https://invent.kde.org/sdk/kdesrc-build
Cloning into 'kdesrc-build'...
warning: redirecting to https://invent.kde.org/sdk/kdesrc-build.git/
remote: Enumerating objects: 1160, done.
remote: Counting objects: 100% (1160/1160), done.
remote: Compressing objects: 100% (567/567), done.
remote: Total 11135 (delta 674), reused 860 (delta 534), pack-reused 9975
Receiving objects: 100% (11135/11135), 4.39 MiB | 6.46 MiB/s, done.
Resolving deltas: 100% (6955/6955), done.
user@KDEneon:~$ cd kdesrc-build/
user@KDEneon:~/kdesrc-build$ cp kdesrc-buildrc-kf5-sample ~/.kdesrc-buildrc
user@KDEneon:~/kdesrc-build$ vim ~/.kdesrc-buildrc
user@KDEneon:~/kdesrc-build$ cat ~/.kdesrc-buildrc   
global
    branch-group kf5-qt5
    kdedir ~/kde # Where to install KF5-based software
    qtdir /usr     # Where to find Qt5
    source-dir ~/kde/src
    num-cores 4
    num-cores-low-mem 2
    make-options -j ${num-cores}
end global

include ~/kdesrc-build/kf5-qt5-build-include

options kcoreaddons
    make-options -j4
end options
user@KDEneon:~/kdesrc-build$ ./kdesrc-build --initial-setup
 - Installing system packages for neon...
    Installing packages for debian/20.04
    Using installer for debian
 * Running sudo apt-get -q -y --no-install-recommends install
[sudo] password for user:
Reading package lists...
Building dependency tree...
…  shortened output …
Processing triggers for install-info (6.7.0.dfsg.2-5) ...
 * Looks like the necessary packages were successfully installed!
 * You already have a configuration file: /home/user/.kdesrc-buildrc.
 * Update your /home/user/.bashrc? (y/N) y
     - Added kdesrc-build directory into PATH
     - Added kdesrc-run shell function
 * Shell rc-file is successfully setup.

user@KDEneon:~/kdesrc-build$


Using /usr for Qt is no the best you can do, as everything will fail to install — but it compiled just fine ;)
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Wed Oct 07, 2020 9:47 pm
The first run failed with some packages that could not be built. I grepped out the following parts that caused the fails:
kwindowsystem - ~/kde/src/log/2020-10-07-02/kwindowsystem/cmake.log
* XCB, X protocol C-language Binding, <https://xcb.freedesktop.org/>

kidletime - ~/kde/src/log/2020-10-07-02/kidletime/cmake.log
Neither the XSync (libXext) nor XScreensaver (libXss) development package was found.

kwin - ~/kde/src/log/2020-10-07-02/kwin/cmake.log
- Could NOT find libhardware (missing: libhardware_LIBRARY libhardware_INCLUDE_DIR)
-- Could NOT find libhwcomposer (missing: libhwcomposer_LIBRARY libhwcomposer_INCLUDE_DIR)
-- Could NOT find hybriseglplatform (missing: hybriseglplatform_LIBRARY hybriseglplatform_INCLUDE_DIR)
-- Could NOT find XCB_GLX (missing: XCB_GLX_LIBRARY XCB_GLX_INCLUDE_DIR) (found version "")
-- Could NOT find XCB_ICCCM (missing: XCB_ICCCM_LIBRARY XCB_ICCCM_INCLUDE_DIR) (found version "")
-- Could NOT find XCB_RANDR (missing: XCB_RANDR_LIBRARY XCB_RANDR_INCLUDE_DIR) (found version "")
-- Could NOT find XCB_SYNC (missing: XCB_SYNC_LIBRARY XCB_SYNC_INCLUDE_DIR) (found version "")

plasma-workspace - ~/kde/src/log/2020-10-07-02/plasma-workspace/cmake.log
Could NOT find XCB (missing: RANDR) (found version "1.14") // very interesting. the not found lib has version 1.14^^

powerdevil - ~/kde/src/log/2020-10-07-02/powerdevil/cmake.log
-- Could NOT find XCB_RANDR (missing: XCB_RANDR_LIBRARY XCB_RANDR_INCLUDE_DIR) (found version "")


Finding the headers/libs:

At first the simple ones: xcb and randr:`apt search dev libxcb-`
libxcb-glx0-dev
libxcb-icccm4-dev
libxcb-randr0-dev
libxcb-sync-dev
libxcb-xinput-dev (not mentioned, but I know that I do need it later)

The libhardware-stuff: I do not know, so I'll take a closer look at kwin:
`less ~/kde/src/kwin/CMakeLists.txt`
Searching for hardware tells us to install`hwdata`, which already is the newest version… (`apt show hwdata`)
as there is no library mentioned I searched for libhardware in the web → Android stuff, so I don't need it for now.

The hybris egl platform is for mobiles too. Mer / Jolla / Sailfish OS users may know it already. I'll better skip this one as I have a bad feeling about… but do not remember why.

So I'm only providing the missing X11-stuff:
Code: Select all
apt install libxcb-glx0-dev libxcb-icccm4-dev libxcb-randr0-dev libxcb-sync-dev libxcb-xinput-dev


After restarting `./kdesrc-build plasma-desktop` again, it just compiles all 98 modules.
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 5:37 am
Hello, thank you for investigating, I keep having the same errors if I try building with QT's kdesrc-build.
It seems it misses something, I presume kdesrc-build is not up to date regarding this.
I'll try with the distro's packages, but I think it's not that reliable, because daily updates might change things in an unpredictable way.
From my experience I'll run into troubles again, in a random fashion.
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 9:01 am
In my other vm (based on Kubuntu 20.10 daily) I have a self compiled Qt5.15.1, which works with kdesrc-build. Perhaps you'll do it the same way? I've used the source package from here: https://download.qt.io/archive/qt/5.15/5.15.1/single/qt-everywhere-src-5.15.1.tar.xz and compiled it myself in ~/qt5.15.1 as a second Qt independent from the OS ones. You just have to set qtdir ~/qt5.15.1 in your kdesrc-buildrc.
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 11:23 am
I don't know what to say. Why that should work, should be the same...
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 2:00 pm
Did you try the KDE built? I can't logoff from the KDE menu because I have a double set of icons (Firefox, System Settings, Dolphin, Kate, Discover), but no log out, shutdown, restart buttons...

I can't make it build QT.
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 3:42 pm
Yep, I'm currently running it (the kde neon one described above, using the system qt5.15.0). I did follow the hints here: https://community.kde.org/Get_Involved/development#Plasma and added dbus-support and LD_LIBRARY_PATH, adjustet to my setup, and my compiled version is available via SDDM.
User avatar
msdobrescu
Registered Member
Posts
119
Karma
0
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 3:51 pm
May I ask how long does it compile for you and what CPU do you use?
koffeinfriedhof
Registered Member
Posts
608
Karma
4
OS

Re: Building KDE brings errors

Thu Oct 08, 2020 4:21 pm
Hard to say, as I am using a virtual machine on my homeserver. The VM has 4 Cores and 8G RAM, the server double, but I do not know long it took to compile. Doesn't mean anything anyway, there is much more access to the filesystem than only in this VM, so it would take a longer time than expected and times would change a lot depending on the other traffic.


Bookmarks



Who is online

Registered users: bartoloni, Bing [Bot], Google [Bot], Sogou [Bot], Yahoo [Bot]