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 .. 15 16 17 18 19 20 21 22 23 24 25 Next › Last »

ranger commented on 2017-02-21 18:43 (UTC) (edited on 2017-02-21 18:43 (UTC) by ranger)

I have limited space in my main pc, that's why I use /tmp. I will try tomorrow to unmount /tmp and build again.

kabbalah commented on 2017-02-21 18:42 (UTC)

This is error in compile lib32-qt4.: make[4]: *** [Makefile:14143: .obj/release-shared/helpviewer_qwv.o] Error 1 make[4]: se sale del directorio '/tmp/yaourt-tmp-julio/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]: se sale del directorio '/tmp/yaourt-tmp-julio/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]: se sale del directorio '/tmp/yaourt-tmp-julio/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]: se sale del directorio '/tmp/yaourt-tmp-julio/aur-lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools' make: *** [Makefile:891: sub-tools-make_default-ordered] Error 2 ==> ERROR: Se produjo un fallo en build(). Cancelando… ==> ERROR: Makepkg no ha podido compilar lib32-qt4.

WoefulDerelict commented on 2017-02-21 18:39 (UTC)

ranger: Interesting. Thanks for the feedback. Have you tried building it on your main PC outside of /tmp? Unless it is running out of space I can't really imagine why that would effect the build as I've managed to do it here successfully with an i7-870 backed by 16 GB of RAM and inside a VM which was allocated 8 GB. The best suggestion I've gotten so far is that this is some kind of race condition in qt4's build system which is unfortunate as it is one of the harder things to reproduce reliably, find and fix. Thanks for uploading a binary as I'm sure this will come in handy for some folks.

ranger commented on 2017-02-21 18:19 (UTC)

I still can't build the package using my main pc (i7-3537U, ssd, 8GB RAM) but I managed to build it using my "old" laptop (pentium P6200, 4GB RM). I don't know why it fails. I have exactly the same makepkg.conf. similar setup and up to date systems. The main difference (except the hardware) is that the laptop doesn't use /tmp for building. If someone needs the latest version (-8), I uploaded it in the archlinuxgr repo [archlinuxgr] SigLevel = PackageOptional Server = http://archlinuxgr.tiven.org/archlinux/$arch

WoefulDerelict commented on 2017-02-21 17:54 (UTC)

kabbalah: 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/

kabbalah commented on 2017-02-21 17:41 (UTC)

I am installing skype from aur and I have problems with lib32-qt4, this throws an error when compiling, I found a lib32-qt4 at: http://ftp.vim.org/os/Linux/distr/manjaro/testing/multilib/x86_64 / I have not used it, I'm waiting to finish compiling the aur.

darkbasic commented on 2017-02-21 16:50 (UTC)

moc openpagesswitcher.h rcc assistant.qrc rcc assistant_images.qrc compiling helpenginewrapper.cpp compiling .moc/release-shared/moc_fontpanel.cpp compiling .moc/release-shared/moc_aboutdialog.cpp 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]: *** Attesa per i processi non terminati.... make[4]: uscita dalla directory "/home/niko/.cache/pacaur/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]: uscita dalla directory "/home/niko/.cache/pacaur/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]: uscita dalla directory "/home/niko/.cache/pacaur/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]: uscita dalla directory "/home/niko/.cache/pacaur/lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/tools" make: *** [Makefile:891: sub-tools-make_default-ordered] Error 2 ==> ERRORE: Si è verificato un errore in build(). L'operazione sta per essere interrotta... :: failed to build lib32-qt4 package(s)

WoefulDerelict commented on 2017-02-21 16:24 (UTC) (edited on 2017-02-21 16:41 (UTC) by WoefulDerelict)

One is still quite unable to reproduce this and I now fail to recall the number of time I've downloaded, verified and built this in various conditions attempting to do so. After calling in some support from the #ArchLinux community on FreeNode and having little luck reproducing the error the most logical cause remains some form of race condition in the qt4 build system. The only other likely candidate is an unexpected interaction with something on the local system. The former is not only hard to diagnose it is extremely difficult to locate and mend. As this is legacy software getting assistance from upstream is bound to be slow. The latter condition is easier to eliminate. When building and testing packages please remember the following. 1) AUR helpers are not supported as they frequently interact with builds causing unpredictable errors. Please download and extract the snapshot archive into a clean working directory or clone this repository via git before using makepkg to build it. 2) Do not build in /tmp. /tmp is tmpfs and can run out of space with large builds or updates causing unexpected breakage. 3) Build packages in a clean chroot to avoid conflicts with other installed software. (https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_Clean_Chroot) meepzh: I'm glad you were able to successfully build this. Thanks for stopping by to provide your feedback. plebian: Thanks for the information. Did you use pacaur for the whole process? Your build is having a sad at a different location than the majority of failures reported here. ZeroBit: Thanks for the input. Makes things almost seem predictable till someone pops back with a different failure. Tomek80Bytom: This is not a package, it is a collection of resources to build a package. QT4 is a sizeable library and takes quite a while to build. You could have saved yourself the trouble of rebuilding by reading the comments here as the issue you're experiencing has already been reported and is under investigation.

meepzh commented on 2017-02-21 15:18 (UTC) (edited on 2017-02-21 17:03 (UTC) by meepzh)

I was having issues earlier. Then I cleared the pacaur cache at ~/.cache/pacaur/lib32-qt4 and it built successfully. CPU Info and Build Log: https://gist.github.com/meepzh/632a7661f55599d6d0089c979b0c4aa5 I'm running stock 4.9.9-1-ARCH x86_64 on Intel i7 4800MQ with 16GB RAM. Best of luck resolving the issue!

devourerOfBits80 commented on 2017-02-21 11:20 (UTC)

This package is really very terrible. One hour of compilation and I have got error. :-( I tried three times. openpagesswitcher.cpp: In member function ‘virtual bool OpenPagesSwitcher::eventFilter(QObject*, QEvent*)’: openpagesswitcher.cpp:157:61: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] else if (key == Qt::Key_Tab && (ke->modifiers() == modifier)) ~~~~~~~~~~~~~~~~^~~~~~~~~~~ compiling helpviewer_qwv.cpp 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)