Onboarding progress report

Ihor Antonov ihor at antonovs.family
Sun Jun 21 21:33:11 BST 2020


Hey guys,


I wanted to share my progress since my last email.

I spent most of my free time this week by trying to go through
https://community.kde.org/KDE_PIM/Development

It was an iterative process, I ran into a lot of issues. I think some of my 
experience may be used to improve documentation, or file good bug reports.
(And with that I might need your help)

Building Qt
===========

First big speed bump was the fact that qt on my system (Debian Sid) was too 
old (5.12). Intentionally decided to go with a non-popular choice of distro 
for KDE development for multiple reasons, which includes laziness, lack of 
time to install a different distro, lack of hardware to run that distro on. 
But the main reason was that only by choosing the hard way a new bugs can be 
discovered and fixed.

So I had to compile qt with kdesrcbuild a few times. It appears that qt5-set 
from qt5-build-include is missing a few things:

- missing qtspeech (required by kpimtextedit, dependecy is not optional 
despite docs say it is)
- missing qtwebengine (required by a lot of things, and if you have decided to 
building your own Qt chances are that you might need it)
- missing qtnetworkauth (required by kdepim-runtime)


Another couple of annoying things is that I discovered with kdesrc-build:

- if I add more modules qt to qt5-set kdesrc-build does not actually build 
them until I purge build directory and source directory

- kdesrc-build silently proceeds when qt module fails to configure. In my 
specific case qtwebengine didn't build because of some missing system library, 
but kdesrc-build was saying that it had built it.
This one was the most frustrating one.

- similar issue was with qtbase, required SQL drivers for mysql/postgresql 
were not built because of missing libraries, but no errors were shown 
anywhere, which I discovered only when I tried to run Akonadi.


Building KDE-PIM
================

I ran into some outdated system dependencies (libgrantlee5-dev), lucky for me 
there was an updated version in experimental repository.

For the most part kde stuff was built without problems. The only annoying 
thing was that kde-pim pulls in bluez-qt, which has nothing to do with pim.
Someone on irc explained it that some project's metadata depends on 
kf5unmbrella.

Bluez-qt fails to install (permission denied) since it wants to install udev 
rules to my system location. Do not run kdesrc-build with root!



Running KDE-PIM
================

I had to make modifications to prefix.sh to run things I've built. Existing 
documentation does not take into account that if you build your own QT you 
need to update LD_LIBRARY_PATH as well as other QT-related paths. Where can I 
send a PR to update https://community.kde.org/KDE_PIM/Development ?


Lastly, devel instance of Akonadi clashes with default one. My dev KMail was 
crashing because it was failing to lock Local Folders. This error went away 
when I stopped default akonadi instance.

Apparently the location of Local Folders is hardcoded, or is something else is 
going on? 



I might have missed a few things but this is the bulk of it.
Any comments and suggestions are highly appreciated.

Thanks
-- 
Ihor Antonov
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20200621/a511a01c/attachment.sig>


More information about the kde-pim mailing list