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: WoefulDerelict
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 .. 7 8 9 10 11 12 13 14 15 16 17 .. 25 Next › Last »

slav commented on 2017-03-06 15:45 (UTC)

collect2: error: ld returned 1 exit status make[2]: *** [Makefile.WebKit.QtWebKit:1210: ../../../../../../lib/libQtWebKit.so.4.10.4] Error 1 make[2]: Leaving directory '/tmp/packerbuild-1000/lib32-qt4/lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebKit/qt' make[1]: *** [Makefile.WebKit:115: sub-WebKit-qt-QtWebKit-pro-make_default-ordered] Error 2 make[1]: Leaving directory '/tmp/packerbuild-1000/lib32-qt4/lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source' make: *** [Makefile:747: sub-webkit-make_default-ordered] Error 2 ==> ERROR: A failure occurred in build(). Aborting... The build failed.

tc1384 commented on 2017-03-05 23:18 (UTC)

I did not have qtwebkit installed as noted in my post. > Note: qtwebkit was removed

WoefulDerelict commented on 2017-03-05 19:01 (UTC)

linus.c: If I read the output correctly it appears your build is running into some legacy 64-bit gstreamer 0.10 stuff and trying to include gstreamer 0.10 support as part of the build. It is failing because there is no matching lib32-gstreamer0.10 Building in a clean chroot should fix the issue.

WoefulDerelict commented on 2017-03-05 12:22 (UTC)

jro: Did you happen to try building this in a clean chroot at any point? There is a noted issue in the pinned comment where QT 4's build system where it will pull in resources found in a dirty build environment and those will cause output similar to yours. Please do not submit localized terminal output as it befuddles both automated translation software and maintainers. When submitting output please use the POSIX or C locale. tc1384: This seems like a build issue resulting from a dirty build environment. Other parts of QT 4, like qtwebkit, can not be present on the system or they will interact with the QT4 build and cause it to fail. This is noted in the pinned posted above all the other comments. The PKGBUILD functions absolutely fine in a clean container. Dirty build environments are NOT a packaging issue. It is and always has been best practice to build packages in a clean chroot.

tc1384 commented on 2017-03-05 11:17 (UTC) (edited on 2017-03-05 11:22 (UTC) by tc1384)

qvector.cpp:(.text+0xa9): undefined reference to `qRealloc(void*, unsigned long)' qvector.cpp:(.text+0xba): undefined reference to `qReallocAligned(void*, unsigned long, unsigned long, unsigned long)' collect2: error: ld returned 1 exit status make[1]: *** [Makefile:117: ../../../bin/moc] Error 1 make[1]: Leaving directory '/home/usr1/.cache/pacaur/lib32-qt4/src/qt-everywhere-opensource-src-4.8.7/src/tools/moc' make: *** [Makefile:97: sub-moc-make_default-ordered] Error 2 ==> ERROR: A failure occurred in build(). Aborting... :: failed to build lib32-qt4 package(s) Note: qtwebkit was removed

PhotonX commented on 2017-03-05 11:16 (UTC)

@jro: Sounds like the problem described in the pinned comment.

jro commented on 2017-03-05 10:59 (UTC)

for me, build still fails reproducibly on three devices. Find the last 40 or so lines of the build log at https://gist.github.com/vasyugan/df99606405786ed0031c407626d18ddf

PhotonX commented on 2017-03-05 10:39 (UTC)

You're welcome and thanks for the fix, it works!

WoefulDerelict commented on 2017-03-04 22:12 (UTC)

PhotonX: Thanks very much for sticking with me through this and being my guinea pig. I do believe that pins down the problem and I can issue a proper fixed update now. Your diligence in tracking this down with me has been much appreciated.