Package Details: lib32-qt4 4.8.7-15

Git Clone URL: https://aur.archlinux.org/lib32-qt4.git (read-only, click to copy)
Package Base: lib32-qt4
Description: A cross-platform application and UI framework (32-bit)
Upstream URL: http://www.qt.io
Licenses: custom, GPL3, LGPL, FDL
Conflicts: lib32-qt
Replaces: lib32-qt
Submitter: arojas
Maintainer: None
Last Packager: WoefulDerelict
Votes: 51
Popularity: 0.000000
First Submitted: 2017-02-09 20:36 (UTC)
Last Updated: 2019-11-19 22:10 (UTC)

Pinned Comments

WoefulDerelict commented on 2017-03-07 19:07 (UTC) (edited on 2018-08-26 01:22 (UTC) by WoefulDerelict)

This package often requires special care to build. If building this with makepkg fails it will be necessary to construct the package in a clean chroot. Using an AUR helper is not recommended; however, aurutils does provide the option to build in the clean chroot.

The process of building this package in a clean chroot is rendered exceptionally simple with the help of scripts in the devtools package and can be completed via the following steps. These summarize the information provided by the Arch Linux DeveloperWiki and assume familiarity with git or the process of downloading a snapshot from the AUR and extracting the archive. Please refer to this article for more information about the devtools scripts and building in the clean chroot: [https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_Clean_Chroot]

Prerequisites: This process uses scripts in devtools to simplify the procedure: please install this package before beginning. The lib32-libmng package is required and must be built or downloaded from the Arch Linux Archive [https://wiki.archlinux.org/index.php/Arch_Linux_Archive]. QT 4 depends on this package and it is no longer found in the binary repositories.

  1. Clone the lib32-qt4 repository or extract the snapshot archive into a clean working directory.

  2. Enter the directory containing the package source. (PKGBUILD and patches.)

  3. Execute the following command, supplying the location of lib32-libmng: multilib-build -- -I /<somewhere>/lib32-libmng-2.0.3-1-x86_64.pkg.tar.xz

  4. Execute pacman with the -U flag to install the resulting package: just as one would with any other local package. Note: lib32-libmng would need to be installed in a similar fashion if it isn't already present on your system.

WoefulDerelict commented on 2017-02-25 15:52 (UTC) (edited on 2018-08-26 00:47 (UTC) by WoefulDerelict)

The QT 4 build system is prone to some odd behaviour: especially if the qtwebkit package is installed. [https://bbs.archlinux.org/viewtopic.php?id=132416] [https://bugreports.qt.io/browse/QTBUG-20236]

If your build fails with the following [error: expected class-name before ‘{’ token] when compiling please build in a clean chroot.

If your build fails with error messages about skipping incompatible files and being unable to find a specific file in a compatible format, especially while linking, you will need to build in a clean container to avoid issues.

Building this package in a clean chroot or other form of container will prevent unexpected issues.

All build errors will be ignored unless the build was performed inside a clean, properly configured container. For more information about building in a clean chroot see this article: [https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_Clean_Chroot]

Big thanks to int [at] arcor [dot] de for doing the legwork to track down the relevant issue reports and sending them my way.

The archlinuxgr repository contains a binary copy of this package courtesy of ranger.

[archlinuxgr] Server = http://archlinuxgr.tiven.org/archlinux/$arch

Latest Comments

« First ‹ Previous 1 .. 16 17 18 19 20 21 22 23 24 25 Next › Last »

ZeroBit commented on 2017-02-21 09:51 (UTC) (edited on 2017-02-21 09:54 (UTC) by ZeroBit)

I have the same problem on 2 computers: helpviewer_qwv.cpp:161:1: error: expected class-name before ‘{’ token { ^ helpviewer_qwv.cpp:166:13: error: ‘QWebPage’ does not name a type virtual QWebPage *createWindow(QWebPage::WebWindowType); ^~~~~~~~ helpviewer_qwv.cpp:167:32: error: ‘WebAction’ has not been declared virtual void triggerAction(WebAction action, bool checked = false); ^~~~~~~~~ helpviewer_qwv.cpp:169:42: error: ‘QWebFrame’ has not been declared virtual bool acceptNavigationRequest(QWebFrame *frame, ^~~~~~~~~ helpviewer_qwv.cpp:170:41: error: ‘NavigationType’ has not been declared const QNetworkRequest &request, NavigationType type); ^~~~~~~~~~~~~~ helpviewer_qwv.cpp: In constructor ‘HelpPage::HelpPage(QObject*)’: helpviewer_qwv.cpp:182:7: error: class ‘HelpPage’ does not have any field named ‘QWebPage’ : QWebPage(parent) ^~~~~~~~ helpviewer_qwv.cpp: At global scope: helpviewer_qwv.cpp:190:1: error: ‘QWebPage’ does not name a type QWebPage *HelpPage::createWindow(QWebPage::WebWindowType) ^~~~~~~~ helpviewer_qwv.cpp:200:30: error: variable or field ‘triggerAction’ declared void void HelpPage::triggerAction(WebAction action, bool checked) ^~~~~~~~~ helpviewer_qwv.cpp:200:30: error: ‘WebAction’ was not declared in this scope helpviewer_qwv.cpp:200:48: error: expected primary-expression before ‘bool’ void HelpPage::triggerAction(WebAction action, bool checked) ^~~~ make[4]: *** [Makefile:14146: .obj/release-shared/helpviewer_qwv.o] Error 1 make[4]: Leaving directory '/tmp/yaourt-tmp-user/aur-lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools/assistant/tools/assistant' make[3]: *** [Makefile:42: sub-assistant-make_default-ordered] Error 2 make[3]: Leaving directory '/tmp/yaourt-tmp-user/aur-lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools/assistant/tools' make[2]: *** [Makefile:113: sub-tools-make_default-ordered] Error 2 make[2]: Leaving directory '/tmp/yaourt-tmp-user/aur-lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools/assistant' make[1]: *** [Makefile:52: sub-assistant-make_default-ordered] Error 2 make[1]: Leaving directory '/tmp/yaourt-tmp-user/aur-lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools' make: *** [Makefile:891: sub-tools-make_default-ordered] Error 2 ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build lib32-qt4. ==> Restart building lib32-qt4 ? [y/N]

plebian commented on 2017-02-21 09:36 (UTC) (edited on 2017-02-21 09:36 (UTC) by plebian)

@WoefulDerelict Makelog: https://gist.github.com/MartijnDevNull/0fca281f31efa88cc77925cf266c8103 CPU: https://gist.github.com/MartijnDevNull/bbdfcbbb549f31938f3474e9e41ffe13 Install: Antergos x86_64 Linux 4.9.9-1-ARCH Everything else is stock and up to date

WoefulDerelict commented on 2017-02-21 00:46 (UTC)

vita_cell: Could you try building this with makepkg outside of tmpfs instead of with yaourt? You'll forgive me; however, I'm not fluent in Spanish and terminal output is very difficult to translate and parse. Not sure why that is happening but I can't reproduce it. My only guess it something funny in your system's i/o and yaourt + tmpfs

WoefulDerelict commented on 2017-02-21 00:30 (UTC) (edited on 2017-02-27 18:33 (UTC) by WoefulDerelict)

If your build fails with the following [error: expected class-name before ‘{’ token] when compiling helpviewer_qwv.cpp at 161:1 please revert back to basic package building procedure: Do NOT use an AUR helper. Use makepkg under a clean chroot. The wiki [https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_Clean_Chroot https://wiki.archlinux.org/index.php/Arch_User_Repository] as well as the community are available for support if you are unfamiliar with the process. I can be found in the #ArchLinux and #ArchLinux-AUR channels along with many other helpful community members on FreeNode [https://wiki.archlinux.org/index.php/IRC_channel]. If you aren't able to build this and need a functioning copy you can find old binary releases of lib32-qt4 and many other packages in the Arch Linux Archive: https://archive.archlinux.org/packages/l/lib32-qt4/ Thanks to all the users who have submitted output from their builds and a special thanks to mattlyons for smashing through the test suite with a Skylake and submitting the results to me via e-mail. I'm still sifting through the data to see if I can't locate the exact cause; however, I've narrowed it down to two more distinct avenues. The first is that some package is disrupting the build by altering the behaviour of the tools resulting in garbled output: likely at some macro expansion. The second is that there is a race condition somewhere in the QT 4.8.7 build system leading to improperly generated output. Should this turn out to be a race condition in the QT 4.8.7 build system it may take some time to resolve. I'll be hoping to include the QT Project in the hunt for heisenbergs; however, this is legacy Trolltech/Nokia/Digia stuff so I'm not sure how much help they will be. I’m presently conducting tests under a /new/ Arch Linux base installation on an Intel Haswell i7 from the latest ISO. It is currently suspected that the build errors many users are experiencing result from some race condition in the QT4 build system. One has spotted discussion of a similar issue on an entirely different distribution that supports this suspicion here: http://blfs-dev.linuxfromscratch.narkive.com/d2pzKCq9/kde4 Unfortunately these are exceptionally difficult to reproduce and diagnose. If users could provide me with additional information when reporting issues it would greatly help me address the issue you’re experiencing. Specifically your CPU (please include the manufacturer and model), the amount of RAM, media type (SSD/HDD) and some details about your installation. I’ll need to know if you’re running Arch Linux proper or a spin, if you’ve made any changes to makepkg.conf, when your last sync was, which package is providing lib32-libgl, the specific command you used to initiate the build and if it was run in a clean chroot. If you can provide me with the entire output of the build process it is much more helpful than a vague snippit out of context: those often tell me nothing. I’ve only ever seen the processor generation noticeably impact specific build tests of cryptographic libraries but I’d like to eliminate the variable so please include more than just the manufacturer and class, id est: Intel i7-880, Intel i7-4790, Intel i7-Nehalem, Intel i5-Skylake or AMD FX-9590 vs Intel i7. It is also helpful to know if the firmware and processor microcode are up to date and/or if the processor microcode is being updated by the system at boot. In the unlikely event I/O latency is having some bearing on the output it would help me to know if the build (source and output) were hosted in RAM, on an SSD or a HDD employing spindle and VCA.

vita_cell commented on 2017-02-21 00:14 (UTC)

Error :( http://dpaste.com/15BT2K6

WoefulDerelict commented on 2017-02-21 00:10 (UTC)

n0bs: I definitely need more output to debug that. lib32-dbus is a dependency and should already be on your system for makepkg to even proceed to build(). Not really sure why it isn't finding it on your system and it is bailing out.

WoefulDerelict commented on 2017-02-21 00:07 (UTC)

billypilgrim: I don't recall there being a pkgrel 6 out here in the AUR. It was dropped at pkgrel 7 and there is still a binary package for 4.8.7-7 in the Arch Linux archive. I had noticed some builds in temp so I'd tested against this locally and it didn't result in a failure. This is large but only takes up about 2 GB. With 8 GB of ram tmpfs is limited to 4GB of space in a default Arch Linux deployment which was still more than enough space for it to succeed in my VM test environment. Were this causing the issue I'd have expected to see something in the output about there being no space left on a device.

n0bs commented on 2017-02-20 23:44 (UTC)

I'm getting the following error with both pacaur and manually downloading the snapshot and running makepkg: `The QtDBus module cannot be enabled because libdbus-1 version 0.93 was not found. Turn on verbose messaging (-v) to ./configure to see the final report. If you believe this message is in error you may use the continue switch (-continue) to ./configure to continue. ==> ERROR: A failure occurred in build(). Aborting...`

ranger commented on 2017-02-20 22:12 (UTC)

billypilgrim, I also build in the /tmp. Maybe this is the problem?