Package Details: mingw-w64-qt5-base 5.7.0-4

Git Clone URL: https://aur.archlinux.org/mingw-w64-qt5-base.git (read-only)
Package Base: mingw-w64-qt5-base
Description: A cross-platform application and UI framework (mingw-w64)
Upstream URL: https://www.qt.io/
Licenses: custom, GPL3, LGPL3, FDL
Groups: mingw-w64-qt, mingw-w64-qt5
Submitter: ant32
Maintainer: Martchus
Last Packager: Martchus
Votes: 14
Popularity: 0.284475
First Submitted: 2013-08-28 23:56
Last Updated: 2016-08-19 19:52

Dependencies (15)

Sources (24)

  • https://download.qt.io/official_releases/qt/5.7/5.7.0/submodules/qtbase-opensource-src-5.7.0.tar.xz
  • qt5-add-angle-support.patch
  • qt5-allow-usage-of-static-qt-with-cmake.patch
  • qt5-customize-extensions-for-static-build.patch
  • qt5-disable-default-lib-include-detection.patch
  • qt5-dont-add-resource-files-to-qmake-libs.patch
  • qt5-dont-build-host-libs-static.patch
  • qt5-enable-rpath-for-host-tools.patch
  • qt5-fix-implib-ext.patch
  • qt5-fix-linking-against-static-dbus.patch
  • qt5-fix-linking-against-static-pcre.patch
  • qt5-fix-opengl-to-many-sections.patch
  • qt5-fix-static-psql-mysql.patch
  • qt5-fixes-from-mxe.patch
  • qt5-merge-static-and-shared-library-trees.patch
  • qt5-prevent-debug-library-names-in-pkgconfig-files.patch
  • qt5-rename-qtmain-to-qt5main.patch
  • qt5-use-correct-pkg-config-static-flags.patch
  • qt5-use-external-angle-library.patch
  • qt5-use-pkgconfig-for-harfbuzz.patch
  • qt5-use-system-zlib-in-host-libs.patch
  • qt5-use-win32-g++-mkspecs-profile.patch
  • qt5-win32-static-cmake-link-ws2_32-and--static.patch
  • qt5-workaround-pkgconfig-install-issue.patch

Pinned Comments

Martchus commented on 2016-05-18 22:01

All my packages are managed at GitHub where you can also contribute directly: https://github.com/Martchus/PKGBUILDs
There also exist a binary repository: https://martchus.no-ip.biz/repo/arch/ownstuff

If you would like to contribute, here is a list of known bugs things needing improvement:
- Currently the build system tries to link against the already installed version of the bootstrap library (if present) and not the new one. This leads to compile errors. Hence the package must be built in a clean chroot or at least the previous version must be uninstalled before rebuilding.
- The linker library search paths for applications which need to be build for the host architecture aren't set correctly. Hence those paths are currently set manually (see comment in mingw-w64-qt5-declarative for example).
- Compiling QtAV using the ANGLE version doesn't work. I don't know whether other applications/libs using OpenGL via Qt are also affected but it is very likely.
- i686 version of the WebKit module doesn't work. See the comment in mingw-w64-qt5-webkit. Could be a mingw-w64 bug.
- The latest version of WebKit module (5.7.0) doesn't build at all.
- The patches need some cleanup.
- The licenses might need to be updated, see https://bugs.archlinux.org/task/49804.

Known issues which have been addressed already but have not been uploaded here because further testing/tweaking is required:
- Static libraries for the Qt modules outside the base repository should be provided in addition to the dynamic libraries where possible.
- The static version is currently unusable with CMake. I might include some patches from MSYS2 in the next version to fix this.

Latest Comments

Martchus commented on 2016-06-22 20:47

Updated to 5.7.0. As always I hope I didn't break anything.

As already mentioned, there are new modules available: mingw-w64-qt5-charts mingw-w64-qt5-gamepad mingw-w64-qt5-scxml mingw-w64-qt5-virtualkeyboard

I'm not able to build version 5.7.0 of mingw-w64-webkit. Hence I didn't upload the updated version in the AUR. If you want to give it a try anyways (and help me fixing it), you'll find an updated version in my GitHub repo.

Martchus commented on 2016-06-17 21:35

xantares: The regular qt5-* packages are still in staging and you have already flagged the package :-) Of course I'm aware of the Qt 5.7.0 release. In fact, work is already in progress: https://github.com/Martchus/PKGBUILDs
Since you're always flagging this very early, I assume you have some interest in the package. If you'd like, you could also take a look at it. I will add some notes about things which are on the TODO list in the pinned comment at the top.

With Qt 5.7.0 there will be new modules, too: mingw-w64-qt5-charts mingw-w64-qt5-gamepad mingw-w64-qt5-scxml mingw-w64-qt5-virtualkeyboard

Salamandar: Now I could reproduce the issue. I guess the reason is that the build directory is already present. Then mkdir fails and, popd isn't executed, the build is done directly in the source tree and popd fails. If that assertion is true, the problem is fixed by passing -p option to mkdir.

Martchus commented on 2016-06-17 08:15

This problem has already existed before I started to maintain the package. I add a note in the pinned comment. Do you think it would make sense to check for existing /usr/i686-w64-mingw32/lib/libQt5Core.dll.a in the PKGBUILD and then refusing to build? Anyways, it is always recommend to build in a clean chroot.

yan12125 commented on 2016-06-16 14:38

Got the following error:

i686-w64-mingw32-g++ -g -shared -Wl,-subsystem,windows -Wl,--out-implib,/tmp/yaourt-tmp-yen/aur-mingw-w64-qt5-base/src/build-i686-w64-mingw32/lib/libQt5Gui.dll.a -o ../../lib/Qt5Gui.dll object_script.Qt5Gui.Release -lcomdlg32 -loleaut32 -limm32 -lws2_32 -lole32 -luuid -ladvapi32 -ljpeg -lpng -lglib-2.0 -lintl -lwinmm -llibEGL -llibGLESv2 -ld3d9 -ldxguid -lgdi32 -luser32 -L/usr/i686-w64-mingw32/lib -lharfbuzz -L/tmp/yaourt-tmp-yen/aur-mingw-w64-qt5-base/src/build-i686-w64-mingw32/lib /usr/i686-w64-mingw32/lib/libQt5Core.dll.a -lGLESv2 -lpng -lz
./.obj/release/qguiapplication.o: In function `ZN22QGuiApplicationPrivate4initEv':
/tmp/yaourt-tmp-yen/aur-mingw-w64-qt5-base/src/qtbase-opensource-src-5.6.1/src/gui/kernel/qguiapplication.cpp:1267: undefined reference to `_imp___ZN23QCoreApplicationPrivate4initEv'
collect2: error: ld returned 1 exit status

Apparently the Makefile attempts to link to a wrong library (/usr/i686-w64-mingw32/lib/libQt5Core.dll.a). Removing existing mingw-w64-qt5-base 5.6.0 and rebuilding works fine.

I got the same problem in one of my previous upgrade (the comment at 2014-12-14 10:04). Maybe PKGBUILD should suggest users to use chroot or remove existing mingw-w64-qt5-base first?

Martchus commented on 2016-06-07 12:18

Compiling QtAV using this package doesn't work currently. I don't know whether other applications/libs using OpenGL via Qt are also affected but it is very likely.

Till the problem is fixed, you can use mingw-w64-qt5-base-opengl which is using native OpenGL (and not ANGLE). Any help fixing it is welcome, of course.

Martchus commented on 2016-05-30 12:50

I'll try fixing it.

yan12125 commented on 2016-05-30 05:20

mingw-w64-mariadb-connector-c is broken. Could you comment it out before it's fixed?

Martchus commented on 2016-05-18 22:01

All my packages are managed at GitHub where you can also contribute directly: https://github.com/Martchus/PKGBUILDs
There also exist a binary repository: https://martchus.no-ip.biz/repo/arch/ownstuff

If you would like to contribute, here is a list of known bugs things needing improvement:
- Currently the build system tries to link against the already installed version of the bootstrap library (if present) and not the new one. This leads to compile errors. Hence the package must be built in a clean chroot or at least the previous version must be uninstalled before rebuilding.
- The linker library search paths for applications which need to be build for the host architecture aren't set correctly. Hence those paths are currently set manually (see comment in mingw-w64-qt5-declarative for example).
- Compiling QtAV using the ANGLE version doesn't work. I don't know whether other applications/libs using OpenGL via Qt are also affected but it is very likely.
- i686 version of the WebKit module doesn't work. See the comment in mingw-w64-qt5-webkit. Could be a mingw-w64 bug.
- The latest version of WebKit module (5.7.0) doesn't build at all.
- The patches need some cleanup.
- The licenses might need to be updated, see https://bugs.archlinux.org/task/49804.

Known issues which have been addressed already but have not been uploaded here because further testing/tweaking is required:
- Static libraries for the Qt modules outside the base repository should be provided in addition to the dynamic libraries where possible.
- The static version is currently unusable with CMake. I might include some patches from MSYS2 in the next version to fix this.

Martchus commented on 2016-05-13 13:23

I only did some minor adjustments with the last update. It builds fine for me with GCC 6.1 in a clean chroot.

Salamandar: So I can't reproduce the issue. Changing popd to 'cd "${srcdir}/${_pkgfqn}"' is wrong. You must change to the build directory for the current architecture. From the error messages I guess that pushd hasn't been called correctly in the first place. Hence the the x86_64 version has been built directly in the source tree which is then of course "containing a previous build" when attempting to built the i686 version there, too. But as already said, I can not reproduce this.

Martchus commented on 2016-05-12 11:54

I'll look into it later. I haven't rebuilt this with mingw-w64-gcc 6.1 anyways.

All comments