Digikam GSoC 2021

Gilles Caulier caulier.gilles at gmail.com
Sat Apr 3 13:15:24 BST 2021


The way to pass env var to Qt5 configure script is explained in helper doc :

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/3rdparty/ext_qt/5.15/config_help-5.15.txt#L3

Variables most be passed at end of .configure options, else it do not work.

MGA 7 provide openssl 1.1.0, not 1.1.1, as required to build Qt 5.15.2.
this is why openssl is previously build as static library in /opt/openssl/
and env is passed to .configure script like this :

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/3rdparty/ext_qt/5.15/CMakeLists.txt#L89

... but definitively, this doesn't work, certainly because .configure
script from Qt is buggy :

Checking for OpenSSL...
Trying source 0 (type openssl) of library openssl ...
$OPENSSL_LIBS is not set.
  => source produced no result.
Trying source 1 (type inline) of library openssl ...
  => source failed condition 'config.win32'.
Trying source 2 (type inline) of library openssl ...
  => source failed condition 'config.msvc'.
Trying source 3 (type inline) of library openssl ...
  => source failed condition 'config.android'.
Trying source 4 (type inline) of library openssl ...
Include path \"/opt/openssl/include/\" is invalid.
  => source produced no result.

So :

1/ we cannot remove the system based openssl 1.1.0 as it used by plenty
Qt5/KF5/DK dependencies to comple (aka mariabd, ffmpeg,opencv, etc.)
2/ to compile Qt 5.15.2, openssl 1.1.1 is required (too bad). So we need a
extra static openssl only for qtbase.
3/ as .configure make a mess, and as i'm tired to waste my time with this
archaic build system. I said stop.
4/ as Qt6 will be based on cmake and not qmake/configure

==> we will use Qt 5.15.1 under MGA7, as this version of Qt only require
openssl 1.1.0.

And that all.

Gilles Caulier


Le sam. 3 avr. 2021 à 12:57, Gilles Caulier <caulier.gilles at gmail.com> a
écrit :

> I currently working on this port : MGA6 => MGA7
>
> I am falling on the same dysfunction.
>
> Gilles Caulier
>
> Le sam. 3 avr. 2021 à 12:23, Anjani Kumar <anjanik012 at gmail.com> a écrit :
>
>> Hello, I am running a Mageia 7.1 instance and trying to run appimage
>> scripts. The first script is failing in configuring Qt 5.15.  There are the
>> things I have done
>>
>> build ext_openssl, and Qt configuration step always fails with
>>
>> ERROR: Feature 'openssl-linked' was enabled, but the pre-condition
>> '!features.securetransport && !features.schannel && libs.openssl' failed.
>>
>> I have tried other ways to provide the path but it always fails with this
>> msg. How to pass the path correctly?
>>
>> On Apr 3 2021, at 11:01 am, Gilles Caulier <caulier.gilles at gmail.com>
>> wrote:
>>
>>
>>
>> Le sam. 3 avr. 2021 à 06:37, Anjani Kumar <anjanik012 at gmail.com
>> <https://link.getmailspring.com/link/4FF348DD-66C7-4FAA-BC58-1CCE0E059A88@getmailspring.com/0?redirect=mailto%3Aanjanik012%40gmail.com&recipient=ZGlnaWthbS1kZXZlbEBrZGUub3Jn>>
>> a écrit :
>>
>> Is there a specific reason to upgrade to mageia 7.1 and not 8?  Qt 5.15
>> is available in the official repos for mageia 8 while for mageia 7.1 it is
>> 5.12 and we would have to build Qt 5.15.
>>
>>
>> yes there is. the libc version to use when AppImage bundle contents is
>> compiled must be an older version for binary compatibility with other Linux
>> systems.
>>
>> Currently Mageia6 is used. This OS has not been maintained since a while
>> but the GCC version is enough recent to compile all Qt5, KF5, and DK codes.
>> This will be the same with Mageia7 which will become unmaintained in the
>> near future to promote Mageia 8. This last one is too much recent to make a
>> large compatible AppImage with all current Linux.
>>
>> Gilles Caulier
>>
>> [image: Sent from Mailspring]
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20210403/bfde7c0a/attachment.htm>


More information about the Digikam-devel mailing list