LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   qt5 update on 14.2 systems (https://www.linuxquestions.org/questions/slackware-14/qt5-update-on-14-2-systems-4175672903/)

elcore 04-10-2020 02:55 AM

qt5 update on 14.2 systems
 
I have a few packaging questions about this.
Are there any new requirements for 5.12 compared to legacy 5.9?
Which libinput version is recommended for 5.12 and what are its requirements?
Is it better to upgrade openssl and everything which depends on it, or link qt5-5.12 to legacy openssl-1.0.2u?

NOTE: I compiled locally qt5-5.9.9-x86_64, and also qt5-5.12.8-x86_64 with libinput-1.12.5 and openssl-1.0.2u
So far it's working fine, but I only use it for 3-4 applications and I've only built the qtbase without extras.
It's possible that the 5.12 upgrade works for these few, but could be totally broken for many other applications..
So I ask just to keep in sync with the SBo standard build environment, and not end up with a bug which nobody else has.

willysr 04-10-2020 04:01 AM

For SBo, we will stick with the one we have in 14.2 since SBo is designed to be used/tested for -stable environment (which is 14.2 at this moment).

elcore 04-10-2020 06:08 AM

Quote:

Originally Posted by willysr (Post 6109841)
For SBo, we will stick with the one we have in 14.2 since SBo is designed to be used/tested for -stable environment (which is 14.2 at this moment).

libinput is not provided in 14.2 repository, only in -current
Figured I may have to temporarily drop that one, if the list of its requirements grows longer.
I'll stick to the one I have installed for now.

willysr 04-10-2020 11:06 PM

This one? https://slackbuilds.org/repository/1...ries/libinput/

elcore 04-11-2020 04:45 AM

Quote:

Originally Posted by willysr (Post 6110231)

Exactly, I'll try my best to explain what's going on.

From SBo page:
Quote:

This requires: graphviz, meson, pyudev, python-evdev, libwacom
None of the things listed are shipped in 14.2
However, old libinput-1.12.5 (which I have installed locally) has no such dependencies.
So I'd much rather drop libinput, than burden a 14.2 system with all of the -current requirements above.

Additionally, I asked about which openssl you recommend because of this:
Code:

executing config test openssl11
+ cd /storage/localhost/qt-everywhere-src-5.12.8/config.tests/openssl11 && /storage/localhost/qt-everywhere-src-5.12.8/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += shared warn_off console single_arch" 'QMAKE_USE += openssl_headers' 'QMAKE_LIBS_OPENSSL_HEADERS = ' /storage/localhost/qt-everywhere-src-5.12.8/config.tests/openssl11
+ cd /storage/localhost/qt-everywhere-src-5.12.8/config.tests/openssl11 && MAKEFLAGS= /usr/bin/gmake
> g++ -c -pipe -O2 -fPIC -std=gnu++11 -w -fPIC  -I. -I/storage/localhost/qt-everywhere-src-5.12.8/qtbase/mkspecs/linux-g++ -o main.o main.cpp
> main.cpp:4:4: error: #error OpenSSL >= 1.1 is required
>  #  error OpenSSL >= 1.1 is required
>    ^
> Makefile:169: recipe for target 'main.o' failed
> gmake: *** [main.o] Error 1
test config.qtbase_network.tests.openssl11 FAILED

Anyway, the 5.12.8 toolkit compiles fine, regardless of this test result.
So it's not very high priority for me right now.

willysr 04-11-2020 08:07 AM

libinput will be part of the Slackware 15.0 anyway, so having them won't hurt and you will get a nice package to handle more devices

elcore 04-11-2020 09:33 AM

Quote:

Originally Posted by willysr (Post 6110356)
libinput will be part of the Slackware 15.0 anyway, so having them won't hurt and you will get a nice package to handle more devices

I get the idea to support more devices, I just don't think the requirements for such a small library are being reasonable.
It's kinda easier for me to drop one feature, than extend a 14.2 system to the point where it's 14.2/current hybrid.

willysr 04-11-2020 12:34 PM

adding libinput means you will add a bunch more dependencies
Currently this is all the deps for libinput:
Code:

six
pyudev
python-evdev
graphviz
ninja
python3
meson
libwacom


bassmadrigal 04-11-2020 12:58 PM

Quote:

Originally Posted by elcore (Post 6110304)
However, old libinput-1.12.5 (which I have installed locally) has no such dependencies.

The 1.12.5 version that was on SBo has the exact same items in the REQUIRES as the 1.15.4 versionthat is currently on there.

You need to remember that the REQUIRES line on SBo doesn't always reflect the absolute required items for compilation, but what the maintainer has determined should be the requires. If you feel that some of those required items be changed to optional, you'd need to present your case to the package maintainer and that maintainer will make the decision.

And nobody is going to be bothered if you decide to change things locally, but if things break, it may be harder to find fixes.

As for the openssl, did you see what the test was trying to check? The test was to see if openssl-1.1 is installed, which is isn't, so it failed. It is likely used for the config to determine what openssl to use internally, which on 14.2 will be openssl-1.0.

Code:

test config.qtbase_network.tests.openssl11 FAILED

USUARIONUEVO 04-11-2020 03:43 PM

Hi , i found a problem in the last updates qt5 related sbo packages.

If build qt5 , with WEBENGINE=no , qt5 builds fine, but later , qt5-webkit , NOT BUILD , i build then qt5 with WEBENGINE=yes , and then qt5-webkit builds fine.

Im not see notes or something arround this , in the README files ,

someone more?


With qt5-5.9.9 no problems with no engine ,webkit builds fine , but not under new updates.

remove optional qt5 webengine parameter on the script ? , or add notes in the README , for qt5-webkit

shelldweller 04-11-2020 04:05 PM

Quote:

Originally Posted by USUARIONUEVO (Post 6110481)
Hi , i found a problem i nthe last updates qt5 related sbo packages.

If build qt5 , with WEBENGINE=no , qt5 builds fine, but later , qt5-webkit , NOT BUILD , i build then qt5 with WEBENGINE=yes , and then qt5-webkit builds fine.

Im not see notes or something arround this , in the README files ,

someone more?

I ran into this too. I emailed the maintainer about it, and he suggested that the part of the script that removes WebEngine is too aggressive perhaps. My idea (that I have not tested out yet) would be to change the line in the SlackBuild that reads:

Code:

if [ "$WEBENGINE" = "no" ]; then
  EXCLUDE="--exclude=qtweb*"
  PKGVERSION="${VERSION}_nowebengine"
else

to say instead something like:

Code:

if [ "$WEBENGINE" = "no" ]; then
  EXCLUDE="--exclude=qtwebengine*"
  PKGVERSION="${VERSION}_nowebengine"
else

As it currently is written, it is removing WebChannel as well (and maybe more), which is part of the new update that either was not previously present or not required by qt5-webkit.

I have yet to test this. I would be interested to hear if anyone tries this.

elcore 04-12-2020 05:13 AM

Quote:

Originally Posted by bassmadrigal (Post 6110445)
The 1.12.5 version that was on SBo has the exact same items in the REQUIRES as the 1.15.4 versionthat is currently on there.

Yes they are build requirements, installed package does not need any of that.
Code:

ldd libinput.so.10.13.0
        linux-vdso.so.1 (0x00007fff37de7000)
        libmtdev.so.1 => /usr/lib64/libmtdev.so.1 (0x00007f6b7025e000)
        libudev.so.1 => /lib64/libudev.so.1 (0x00007f6b70039000)
        libevdev.so.2 => /usr/lib64/libevdev.so.2 (0x00007f6b6fe20000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f6b6fb17000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f6b6f90f000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f6b6f546000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f6b706a4000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6b6f329000)

So I decided against libinput until 15.0 goes to RC1, but I'll keep the old package just in case I need the library later at some point.
I've decided the same for rust, gtk3, mesa and many other things. This part is solved.

Quote:

Originally Posted by bassmadrigal (Post 6110445)
You need to remember that the REQUIRES line on SBo doesn't always reflect the absolute required items for compilation, but what the maintainer has determined should be the requires. If you feel that some of those required items be changed to optional, you'd need to present your case to the package maintainer and that maintainer will make the decision.

Why would I bother the maintainer in private? I never email anything to anyone anyway. And I have no bug to report.
It's no bug for maintainer to fix, I just disagree with some of the SBo requirements because I think they fit -current build environment and not 14.2
Quote:

Originally Posted by bassmadrigal (Post 6110445)
As for the openssl, did you see what the test was trying to check?

Part which is not solved is exactly openssl, because the test says v1.1 'REQUIRED' and yes I'm aware it did link to v1.0 because it said so in that same log.
What I suspect is that it'll become a huge problem later, because I've read somewhere that openssl upstream will no longer update v1.0 for general public.

@USUARIONUEVO, @shelldweller

Not sure, but I think webengine is a replacement for webkit. Personally, I don't use or build either of them because it compiles all day.
I just compile these few modules and rm -rf the rest. (IIRC the last build took around 45min on dual core 4G DDR2).
Note that certain modules exist which depend heavily of chromium sources in qtwebengine directory, but it's not any of these.

Quote:

qtbase
qtgraphicaleffects
qtimageformats
qtmultimedia
qtnetworkauth
qtquickcontrols
qtquickcontrols2
qtscript
qtscxml
qtsvg
qttools
qtx11extras
qtxmlpatterns

shelldweller 04-12-2020 11:41 AM

Quote:

Originally Posted by elcore (Post 6110631)
[...]

@USUARIONUEVO, @shelldweller

Not sure, but I think webengine is a replacement for webkit.

[...]

That might very well be true. However it is a dependency of many SBo's:

Code:

bash-4.3# hoorex -m qt5-webkit
qt5-webkit subsurface MuseScore shotcut qmapshack asterixInspector ugene xvst sigil ZeGrapher zeal trojita owncloud-client notepadqq luminance-hdr kvirc PythonQt nextcloud-client teamviewer pydio-sync PyQt5 python3-PyQt5 leo onionshare fs-uae-arcade pybik Electrum veusz carla jupyter-qtconsole ReText pyqode.qt multibootusb qutebrowser pyqode.core fs-uae-launcher openshot persepolis calibre Mnemosyne pyqode.cobol OpenCobolIDE laptop-mode-tools

I only need it for Electrum. It has also been included into -current semi-recently:

Code:

+--------------------------+
Mon Feb 17 06:03:43 UTC 2020
[...]
l/qt5-webkit-5.212.0_alpha3-x86_64-1.txz: Added.
      Thanks to alienBOB.

So it must be needed for something else in -current (or soon-to-be), I imagine.

elcore 04-12-2020 01:28 PM

Quote:

Originally Posted by shelldweller (Post 6110754)
That might very well be true. However it is a dependency of many SBo's:

Code:

bash-4.3# hoorex -m qt5-webkit
qt5-webkit subsurface MuseScore shotcut qmapshack asterixInspector ugene xvst sigil ZeGrapher zeal trojita owncloud-client notepadqq luminance-hdr kvirc PythonQt nextcloud-client teamviewer pydio-sync PyQt5 python3-PyQt5 leo onionshare fs-uae-arcade pybik Electrum veusz carla jupyter-qtconsole ReText pyqode.qt multibootusb qutebrowser pyqode.core fs-uae-launcher openshot persepolis calibre Mnemosyne pyqode.cobol OpenCobolIDE laptop-mode-tools


TBH I'm not using any of the things you listed, so I don't build or install any.
But I see on your list notepadqq editor depends on it, isn't it great having to compile a huge engine to be able to use a text editor.
I'm sure KDE is the main reason why webkit is in -current, but whatever other reasons may be, this thread is about qt5 on 14.2

USUARIONUEVO 04-12-2020 01:29 PM

webkit and webengine ARE NOT THE SAME THING.

I see new qt5 slackbuild is queed today , number increased and some little modifications..



https://git.slackbuilds.org/slackbui...93aa4e175a5be9


All times are GMT -5. The time now is 06:35 AM.