[WORKAROUND] 32bit Qt5 on a 64bit system

This forum is dedicated to basic help and support :

Ask here your questions about basic installation and usage of Mageia. For example you may post here all your questions about getting Mageia isos and installing it, configuring your printer, using your word processor etc.

Try to ask your questions in the right sub-forum with as much details as you can gather. the more precise the question will be, the more likely you are to get a useful answer

[WORKAROUND] 32bit Qt5 on a 64bit system

Postby mla » Feb 26th, '20, 16:49

On a freshly installed Mageia 7 64bit system, I see qt3, qt4 and qt5 in /usr/lib64, but only qt3 in /usr/lib -- qt4 and qt5 are missing. Is that a deliberate policy? I need to generate a 32bit rpm of a QT app -- how do I get the missing 32bit libraries?

Thanks for any pointers...

To clarify for any later readers... the secret is (a) to use urpmf properly (yeah, OK...), but (b) you may find problem installing devel packages for 32 bit qt5 libraries -- for my purposes it was sufficient to create missing /usr/lib links by hand. E.g.

Code: Select all
# cd /usr/lib
#ln -s libQt5Core.so.5.12.6 libQt5Core.so
#
Last edited by mla on Feb 29th, '20, 21:54, edited 3 times in total.
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby doktor5000 » Feb 26th, '20, 19:19

You may want to add some information what QT app you're referring to in particular, and what libraries it's looking for.
Cauldron is not for the faint of heart!
Caution: Hot, bubbling magic inside. May explode or cook your kittens!
----
Disclaimer: Beware of allergic reactions in answer to unconstructive complaint-type posts
User avatar
doktor5000
 
Posts: 18052
Joined: Jun 4th, '11, 10:10
Location: Leipzig, Germany

Re: 32bit Qt5 on a 64bit system

Postby mla » Feb 26th, '20, 19:35

Your wish is my command. :-)

The app is a QT version of my own game Adv770. The libraries it needs: Qt5WebKitWidgets, Qt5Widgets, Qt5WebKit, Qt5Gui and Qt5Core. At least Qt5Core should be findable within /usr/lib/qt5, but that is absent altogether.

I did install the appropriate *-devel packages, and the 64 bit build works just fine. But given the total absence of 32bit QT5, I am a bit stuck on building the 32bit version.
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby doktor5000 » Feb 27th, '20, 19:03

mla wrote:At least Qt5Core should be findable within /usr/lib/qt5, but that is absent altogether.

It's located directly in /usr/lib, so not sure why you're looking under /usr/lib/qt5

Code: Select all
[doktor5000@Mageia7]─[18:03:06]─[~] urpmq -l libqt5core5 | sort -u | grep -v build-id
/usr/lib/libQt5Core.so.5
/usr/lib/libQt5Core.so.5.12
/usr/lib/libQt5Core.so.5.12.2
/usr/lib/libQt5Core.so.5.12.6
/usr/lib/sse2/libQt5Core.so.5
/usr/lib/sse2/libQt5Core.so.5.12
/usr/lib/sse2/libQt5Core.so.5.12.2
/usr/lib/sse2/libQt5Core.so.5.12.6
Cauldron is not for the faint of heart!
Caution: Hot, bubbling magic inside. May explode or cook your kittens!
----
Disclaimer: Beware of allergic reactions in answer to unconstructive complaint-type posts
User avatar
doktor5000
 
Posts: 18052
Joined: Jun 4th, '11, 10:10
Location: Leipzig, Germany

Re: 32bit Qt5 on a 64bit system

Postby mla » Feb 27th, '20, 19:20

Sorry, trying too hard to be concise and failed to notice that the final version made no sense.

I meant to say that I would expect at least Qt5Core to be in /usr/lib, but there are no libQt* at all and notably no qt5 subdir either. Whereas /usr/lib64 contains plenty of libQt* entries and qt5 subdir too. Essentially 32bit QT is absent.
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby doktor5000 » Feb 28th, '20, 17:56

Well, then install the 32bit library packages if you need them. I don't actually understand what you're asking for or what you're missing.
As shown already, 32bit libQt5Core is packaged and available.

Code: Select all
[doktor5000@Mageia7]─[16:56:01]─[~] urpmf -f -m --name libqt5core5|sort
Core 32bit Release:libqt5core5-5.12.2-2.mga7.i586
Core 32bit Updates:libqt5core5-5.12.2-2.1.mga7.i586
Core 32bit Updates:libqt5core5-5.12.2-2.2.mga7.i586
Core 32bit Updates:libqt5core5-5.12.6-1.mga7.i586
Core 32bit Updates:libqt5core5-5.12.6-2.mga7.i586
Cauldron is not for the faint of heart!
Caution: Hot, bubbling magic inside. May explode or cook your kittens!
----
Disclaimer: Beware of allergic reactions in answer to unconstructive complaint-type posts
User avatar
doktor5000
 
Posts: 18052
Joined: Jun 4th, '11, 10:10
Location: Leipzig, Germany

Re: 32bit Qt5 on a 64bit system

Postby mla » Feb 28th, '20, 19:01

Ah, OK... I see where I was going wrong... I was not using the right combination of urpmf options, which created the impression that both 32 and 64 bit libraries were to be found in one libqt5core package. Blush... I'll go, and write 100 times: "Remember to use --help!". :-) Thanks for your patience.
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby mla » Feb 28th, '20, 20:14

Sorry to be a pain, but I am still having problems.

Code: Select all
# urpmf -m -f --name libqt5webkitwidgets-devel|sort
Core 32bit Release:libqt5webkitwidgets-devel-5.212.0-1.alpha2.24.mga7.i586
Core 32bit Updates:libqt5webkitwidgets-devel-5.212.0-1.alpha3.1.mga7.i586
# urpmi libqt5webkitwidgets-devel-5.212.0-1.alpha3.1.mga7.i586
A requested package cannot be installed:
libqt5core-devel-5.12.6-2.mga7.i586 (due to unsatisfied systemd-devel-241-8.mga7.i586)
Continue installation anyway? (Y/n) y
While some packages may have been installed, there were failures.
A requested package cannot be installed:
libqt5core-devel-5.12.6-2.mga7.i586 (due to unsatisfied systemd-devel-241-8.mga7.i586)
Continue installation anyway?
#


That second "Contnue" question does not wait for a reply, but simply exits.

So being reckless :-) I try:

Code: Select all
# urpmf -m -f --name systemd-devel-241-8.mga7.i586
Core 32bit Release:systemd-devel-241-8.mga7.i586
# urpmi systemd-devel-241-8.mga7.i586
#


Eh??? Has it done anything? Has it done nothing?

I guess, perhaps "alpha3" in the name of the devel package is a hint that things might be broken, but I would not expect something so uninstallable to be in standard repositories.

Am I doing something silly again? Or is 32bit build in practice just not available?
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby doktor5000 » Feb 29th, '20, 01:05

mla wrote:Eh??? Has it done anything? Has it done nothing?

No, it hasn't done anything. But you're jumping from one to another. You may want to start and post what qt5 packages you currently have installed. Apart from that, you only need one -devel package for a given library package installed, you cannot install both the i586 and x86_64 -devel packages for one library package, as they both contain only the headers and hence conflict with each other, it's also not necessary.
Cauldron is not for the faint of heart!
Caution: Hot, bubbling magic inside. May explode or cook your kittens!
----
Disclaimer: Beware of allergic reactions in answer to unconstructive complaint-type posts
User avatar
doktor5000
 
Posts: 18052
Joined: Jun 4th, '11, 10:10
Location: Leipzig, Germany

Re: 32bit Qt5 on a 64bit system

Postby mla » Feb 29th, '20, 13:07

OK, here's the list of qt5 packages installed. (NB I use --last because "rpm -qa" does not bother to show package architecture.)

Code: Select all
# rpm -qa --last | grep qt5
libqt5webkitwidgets5-5.212.0-1.alpha3.1.mga7.i586 Fri 28 Feb 2020 17:11:02 GMT
libqt5printsupport5-5.12.6-2.mga7.i586        Fri 28 Feb 2020 17:11:02 GMT
libqt5widgets5-5.12.6-2.mga7.i586             Fri 28 Feb 2020 17:11:01 GMT
libqt5webkit5-5.212.0-1.alpha3.1.mga7.i586    Fri 28 Feb 2020 17:10:37 GMT
libqt5positioning5-5.12.6-1.mga7.i586         Fri 28 Feb 2020 17:10:35 GMT
libqt5sensors5-5.12.6-1.mga7.i586             Fri 28 Feb 2020 17:10:33 GMT
libqt5quick5-5.12.6-1.mga7.i586               Fri 28 Feb 2020 17:10:33 GMT
libqt5webchannel5-5.12.6-1.mga7.i586          Fri 28 Feb 2020 17:10:32 GMT
libqt5qml5-5.12.6-1.mga7.i586                 Fri 28 Feb 2020 17:10:32 GMT
libqt5eglfsdeviceintegration5-5.12.6-2.mga7.i586 Thu 27 Feb 2020 11:13:51 GMT
libqt5gui5-5.12.6-2.mga7.i586                 Thu 27 Feb 2020 11:13:50 GMT
libqt5eglfskmssupport5-5.12.6-2.mga7.i586     Thu 27 Feb 2020 11:13:50 GMT
libqt5xcbqpa5-5.12.6-2.mga7.i586              Thu 27 Feb 2020 11:13:49 GMT
libqt5network5-5.12.6-2.mga7.i586             Thu 27 Feb 2020 11:13:44 GMT
libqt5dbus5-5.12.6-2.mga7.i586                Thu 27 Feb 2020 11:13:41 GMT
libqt5core5-5.12.6-2.mga7.i586                Thu 27 Feb 2020 11:13:41 GMT
lib64qt5webkitwidgets-devel-5.212.0-1.alpha3.1.mga7.x86_64 Tue 25 Feb 2020 21:18:38 GMT
lib64qt5printsupport-devel-5.12.6-2.mga7.x86_64 Tue 25 Feb 2020 21:18:38 GMT
lib64qt5webkit-devel-5.212.0-1.alpha3.1.mga7.x86_64 Tue 25 Feb 2020 21:18:37 GMT
lib64qt5sensors-devel-5.12.6-1.mga7.x86_64    Tue 25 Feb 2020 21:18:37 GMT
lib64qt5positioningquick5-5.12.6-1.mga7.x86_64 Tue 25 Feb 2020 21:18:36 GMT
lib64qt5positioning-devel-5.12.6-1.mga7.x86_64 Tue 25 Feb 2020 21:18:36 GMT
lib64qt5webchannel-devel-5.12.6-1.mga7.x86_64 Tue 25 Feb 2020 21:18:35 GMT
lib64qt5quick-devel-5.12.6-1.mga7.x86_64      Tue 25 Feb 2020 21:18:33 GMT
lib64qt5qml-devel-5.12.6-1.mga7.x86_64        Tue 25 Feb 2020 21:18:32 GMT
lib64qt5network-devel-5.12.6-2.mga7.x86_64    Tue 25 Feb 2020 21:18:31 GMT
lib64qt5widgets-devel-5.12.6-2.mga7.x86_64    Tue 25 Feb 2020 21:11:41 GMT
lib64qt5gui-devel-5.12.6-2.mga7.x86_64        Tue 25 Feb 2020 21:11:41 GMT
lib64qt5eglfsdeviceintegration-devel-5.12.6-2.mga7.x86_64 Tue 25 Feb 2020 21:11:41 GMT
lib64qt5xcbqpa-devel-5.12.6-2.mga7.x86_64     Tue 25 Feb 2020 21:11:40 GMT
lib64qt5waylandclient5-5.12.6-1.mga7.x86_64   Tue 25 Feb 2020 21:11:38 GMT
lib64qt5waylandcompositor5-5.12.6-1.mga7.x86_64 Tue 25 Feb 2020 21:11:37 GMT
lib64qt5dbus-devel-5.12.6-2.mga7.x86_64       Tue 25 Feb 2020 21:11:35 GMT
lib64qt5core-devel-5.12.6-2.mga7.x86_64       Tue 25 Feb 2020 21:11:34 GMT
lib64qt5test5-5.12.6-2.mga7.x86_64            Tue 11 Feb 2020 15:07:57 GMT
lib64qt5concurrent5-5.12.6-2.mga7.x86_64      Tue 11 Feb 2020 15:07:57 GMT
lib64qt5xml5-5.12.6-2.mga7.x86_64             Tue 11 Feb 2020 15:07:56 GMT
lib64qt5printsupport5-5.12.6-2.mga7.x86_64    Tue 11 Feb 2020 15:07:56 GMT
lib64qt5opengl5-5.12.6-2.mga7.x86_64          Tue 11 Feb 2020 15:07:56 GMT
lib64qt5-database-plugin-mysql-5.12.6-2.mga7.x86_64 Tue 11 Feb 2020 15:07:55 GMT
lib64qt5widgets5-5.12.6-2.mga7.x86_64         Tue 11 Feb 2020 15:07:42 GMT
lib64qt5sql5-5.12.6-2.mga7.x86_64             Tue 11 Feb 2020 15:07:42 GMT
lib64qt5-database-plugin-sqlite-5.12.6-2.mga7.x86_64 Tue 11 Feb 2020 15:07:42 GMT
lib64qt5eglfsdeviceintegration5-5.12.6-2.mga7.x86_64 Tue 11 Feb 2020 15:07:41 GMT
lib64qt5xcbqpa5-5.12.6-2.mga7.x86_64          Tue 11 Feb 2020 15:07:40 GMT
lib64qt5gui5-5.12.6-2.mga7.x86_64             Tue 11 Feb 2020 15:07:40 GMT
lib64qt5network5-5.12.6-2.mga7.x86_64         Tue 11 Feb 2020 15:07:39 GMT
lib64qt5eglfskmssupport5-5.12.6-2.mga7.x86_64 Tue 11 Feb 2020 15:07:39 GMT
lib64qt5dbus5-5.12.6-2.mga7.x86_64            Tue 11 Feb 2020 15:07:38 GMT
lib64qt5core5-5.12.6-2.mga7.x86_64            Tue 11 Feb 2020 15:07:38 GMT
lib64poppler-qt5_1-0.74.0-3.3.mga7.x86_64     Mon 13 Jan 2020 21:16:37 GMT
lib64qt5webkitwidgets5-5.212.0-1.alpha3.1.mga7.x86_64 Thu 26 Dec 2019 23:24:11 GMT
lib64qt5webkit5-5.212.0-1.alpha3.1.mga7.x86_64 Thu 26 Dec 2019 23:24:11 GMT
lib64qt5serialport5-5.12.6-1.mga7.x86_64      Sun 08 Dec 2019 09:17:23 GMT
lib64qt5networkauth5-5.12.6-1.mga7.x86_64     Sun 08 Dec 2019 09:17:22 GMT
lib64qt5help5-5.12.6-1.mga7.x86_64            Sun 08 Dec 2019 09:17:15 GMT
lib64qt5xmlpatterns5-5.12.6-1.mga7.x86_64     Sun 08 Dec 2019 09:17:12 GMT
lib64qt5quicktemplates2_5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:17:09 GMT
lib64qt5quickcontrols2_5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:17:09 GMT
lib64qt5x11extras5-5.12.6-1.mga7.x86_64       Sun 08 Dec 2019 09:17:05 GMT
lib64qt5script5-5.12.6-1.mga7.x86_64          Sun 08 Dec 2019 09:17:05 GMT
lib64qt5webenginewidgets5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:16:27 GMT
lib64qt5webenginecore5-5.12.6-1.mga7.x86_64   Sun 08 Dec 2019 09:16:25 GMT
lib64qt5webengine5-5.12.6-1.mga7.x86_64       Sun 08 Dec 2019 09:16:21 GMT
lib64qt5texttospeech5-5.12.6-1.mga7.x86_64    Sun 08 Dec 2019 09:16:21 GMT
lib64qt5positioning5-5.12.6-1.mga7.x86_64     Sun 08 Dec 2019 09:16:21 GMT
lib64qt5sensors5-5.12.6-1.mga7.x86_64         Sun 08 Dec 2019 09:16:19 GMT
lib64qt5quickshapes5-5.12.6-1.mga7.x86_64     Sun 08 Dec 2019 09:16:19 GMT
lib64qt5quickparticles5-5.12.6-1.mga7.x86_64  Sun 08 Dec 2019 09:16:19 GMT
lib64qt5svg5-5.12.6-1.mga7.x86_64             Sun 08 Dec 2019 09:16:18 GMT
lib64qt5multimediagsttools5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:16:17 GMT
lib64qt5multimediawidgets5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:16:16 GMT
lib64qt5multimediaquick5-5.12.6-1.mga7.x86_64 Sun 08 Dec 2019 09:16:16 GMT
lib64qt5quickwidgets5-5.12.6-1.mga7.x86_64    Sun 08 Dec 2019 09:16:15 GMT
lib64qt5quicktest5-5.12.6-1.mga7.x86_64       Sun 08 Dec 2019 09:16:15 GMT
lib64qt5webchannel5-5.12.6-1.mga7.x86_64      Sun 08 Dec 2019 09:16:14 GMT
lib64qt5multimedia5-5.12.6-1.mga7.x86_64      Sun 08 Dec 2019 09:16:13 GMT
lib64qt5quick5-5.12.6-1.mga7.x86_64           Sun 08 Dec 2019 09:16:12 GMT
lib64qt5qml5-5.12.6-1.mga7.x86_64             Sun 08 Dec 2019 09:16:11 GMT
openssh-askpass-qt5-2.1.0-3.1.mga7.x86_64     Thu 25 Jul 2019 23:06:27 BST
python3-qt5-gui-5.12.1-2.mga7.x86_64          Thu 04 Jul 2019 15:38:09 BST
python3-qt5-network-5.12.1-2.mga7.x86_64      Thu 04 Jul 2019 15:38:04 BST
phonon4qt5-gstreamer-4.9.0-6.mga7.x86_64      Thu 04 Jul 2019 15:38:03 BST
python3-qt5-quick-5.12.1-2.mga7.x86_64        Thu 04 Jul 2019 15:37:53 BST
python3-qt5-qml-5.12.1-2.mga7.x86_64          Thu 04 Jul 2019 15:37:44 BST
python3-qt5-core-5.12.1-2.mga7.x86_64         Thu 04 Jul 2019 15:37:41 BST
python3-pyqt5-sip-4.19.16-1.mga7.x86_64       Thu 04 Jul 2019 15:37:40 BST
lib64packagekitqt5_1-1.0.1-3.mga7.x86_64      Thu 04 Jul 2019 15:37:11 BST
lib64kf5networkmanagerqt5-5.57.0-1.mga7.x86_64 Thu 04 Jul 2019 15:36:46 BST
lib64marblewidget-qt5_28-19.04.0-1.mga7.x86_64 Thu 04 Jul 2019 15:36:41 BST
pinentry-qt5-1.1.0-5.mga7.x86_64              Thu 04 Jul 2019 15:36:25 BST
lib64polkit-qt5-core1-0.112.0-7.mga7.x86_64   Thu 04 Jul 2019 15:36:17 BST
lib64polkit-qt5-agent1-0.112.0-7.mga7.x86_64  Thu 04 Jul 2019 15:36:17 BST
lib64qtsingleapplication-qt5_1-2.6.1-19.mga7.x86_64 Thu 04 Jul 2019 15:36:07 BST
lib64qtsinglecoreapplication-qt5_1-2.6.1-19.mga7.x86_64 Thu 04 Jul 2019 15:36:06 BST
lib64qt5iocompressor1-2.3.1-2.mga7.x86_64     Thu 04 Jul 2019 15:36:06 BST
lib64mygpo-qt5_1-1.1.0-5.mga7.x86_64          Thu 04 Jul 2019 15:36:06 BST
qca-qt5-2.2.1-1.mga7.x86_64                   Thu 04 Jul 2019 15:35:42 BST
lib64kf5bluezqt5-5.57.0-1.mga7.x86_64         Thu 04 Jul 2019 15:35:37 BST
lib64telepathy-qt5-service0-0.9.7-4.mga7.x86_64 Thu 04 Jul 2019 15:35:20 BST
lib64telepathy-logger-qt5_0-17.08.0-3.mga7.x86_64 Thu 04 Jul 2019 15:35:20 BST
lib64qca-qt5_2-2.2.1-1.mga7.x86_64            Thu 04 Jul 2019 15:35:19 BST
lib64qt5lockedfile1-2.4.1-16.mga7.x86_64      Thu 04 Jul 2019 15:35:17 BST
lib64telepathy-qt5_0-0.9.7-4.mga7.x86_64      Thu 04 Jul 2019 15:35:16 BST
phonon4qt5-4.10.2-2.mga7.x86_64               Thu 04 Jul 2019 15:35:08 BST
lib64phonon4qt5experimental4-4.10.2-2.mga7.x86_64 Thu 04 Jul 2019 15:35:08 BST
lib64phonon4qt5_4-4.10.2-2.mga7.x86_64        Thu 04 Jul 2019 15:35:08 BST
lib64signon-qt5_1-8.60-3.mga7.x86_64          Thu 04 Jul 2019 15:35:01 BST
lib64dbusmenu-qt5_2-0.9.3-1.20160218.3.mga7.x86_64 Thu 04 Jul 2019 15:35:00 BST
python3-qt5-dbus-5.12.1-2.mga7.x86_64         Thu 04 Jul 2019 15:17:04 BST
python3-qt5-widgets-5.12.1-2.mga7.x86_64      Thu 04 Jul 2019 15:17:03 BST
#


However,

1. Qt5 devel packages for x86_64stick header files under /usr/lib64/qt5/include/ so not clear how there could be a conflict with i586.

2. The urpmi complaint was not about a conflict with an installed package, but about an unsatisfied dependency on a systemd devel package (see my last post).

3. Devel packages contain more than header files. They also contain base-named links to libraries, e.g. /usr/lib/libQt5Gui.so, as links to the actual libraries. These links are absent in non-devel packages.

In fact, I have now created those missing library links by hand and g++ is now happy -- my app builds in both 64 and 32 bit versions. But I am left utterly baffled by the response one gets trying to install i586 devel packages (as reported in my last post).
mla
 
Posts: 292
Joined: Sep 16th, '11, 16:10

Re: 32bit Qt5 on a 64bit system

Postby doktor5000 » Feb 29th, '20, 17:56

mla wrote:But I am left utterly baffled by the response one gets trying to install i586 devel packages (as reported in my last post).

If you want to know what happens internally, you can try to rerun urpmi like so
Code: Select all
urpmi --debug libqt5webkitwidgets-devel-5.212.0-1.alpha3.1.mga7.i586

But beware, it's quite a lot of debug output.

If you believe this is a bug, feel free to report it.
Cauldron is not for the faint of heart!
Caution: Hot, bubbling magic inside. May explode or cook your kittens!
----
Disclaimer: Beware of allergic reactions in answer to unconstructive complaint-type posts
User avatar
doktor5000
 
Posts: 18052
Joined: Jun 4th, '11, 10:10
Location: Leipzig, Germany


Return to Basic support

Who is online

Users browsing this forum: No registered users and 1 guest

cron