Package Details: mingw-w64-qt5-base-static 5.13.2-1

Git Clone URL: https://aur.archlinux.org/mingw-w64-qt5-base-static.git (read-only)
Package Base: mingw-w64-qt5-base-static
Description: A cross-platform application and UI framework (mingw-w64)
Upstream URL: https://www.qt.io/
Licenses: custom, GPL3, LGPL3, FDL
Groups: mingw-w64-qt5
Submitter: ant32
Maintainer: Martchus
Last Packager: Martchus
Votes: 10
Popularity: 0.000001
First Submitted: 2013-08-28 23:57
Last Updated: 2019-11-12 16:31

Required by (63)

Sources (33)

Pinned Comments

Martchus commented on 2017-01-10 21:24

Notes about using static Qt with CMake:

* Checkout the notes about the static version in the PKGBUILD itself
* Seems like find_package(Qt5Core) is still required when building static version. I think this is not really a problem, one just has to know it.
* Here is a simple example: https://github.com/oggio88/Qt-CMake-HelloWorld/compare/master...Martchus:mingw-w64-static
* I also included a commits showing how to link statically against against Qt plugins and dependencies of Qt itself.

Note about using static Qt with qmake:
* Use https://github.com/Martchus/qtbase/commit/acc61ef7833f685b1f66c9b99086ccfc1e6aa20f to fix inclusion of static plugins (patch will be included on next update, meanwhile it can also be applied manually after the mingw-w64-qt5-base package has been installed)
* Add `CONFIG+=no_smart_library_merge` to qmake arguments to prevent qmake from messing linker flags for freetype2/harfbuzz (which have dependency cycle).

Martchus commented on 2016-07-10 19:47

All my packages are managed at GitHub where you can also contribute directly: https://github.com/Martchus/PKGBUILDs
Patches for this package are managed at: https://github.com/Martchus/qtbase/tree/5.7.0-mingw-w64

There also exist a binary repository: https://martchus.no-ip.biz/repo/arch/ownstuff

For general discussion and issues not only concerning this variant please use the comment section of the package mingw-w64-qt5-base.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 Next › Last »

ant32 commented on 2014-12-15 04:18

I now made this build without opengl or angle. I was now able to build basic gui apps when I modified two lines in /usr/i686-w64-mingw32/lib/qt/mkspecs/win32-g++/qmake.conf

QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng -lqtharfbuzzng

QMAKE_LIBS_QT_ENTRY = -lmingw32 /usr/i686-w64-mingw32/lib/qt/plugins/platforms/libqwindows.a -lqt5main

You also need to add these two lines to main.cpp

#include <QtPlugin>
Q_IMPORT_PLUGIN (QWindowsIntegrationPlugin);

I read somewhere that building qt5 statically with angle wasn't possible for some reason (I believe if the circular reference was solved it would be possible).
OpenGL would probably work but there is a large object bug that needs to be fixed for 64 bit (32bit works fine I think).

ant32 commented on 2014-08-17 20:16

I think the problem comes from linking order and that qt5Gui and Qt5Widgets both link to GLESv2. Manually fixing the linking was the only way I found a while back and I should have documented it but didn't. I tried for a while now but didn't get it to work. http://eli.thegreenplace.net/2013/07/09/library-order-in-static-linking/

I spent some time getting things to work but didn't get it. Hopefully I have time in the near future

codestation commented on 2014-08-17 18:42

Tried to compile a static build from a sample project on QtCreator, got this linker error:

/usr/lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mingw32/lib/../lib/libQt5Gui.a(qopenglcontext.o):(.text+0x62a): undefined reference to `__imp_glGetIntegerv'
/usr/lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mingw32/lib/../lib/libQt5Gui.a(qopenglcontext.o):(.text+0x2d4f): undefined reference to `__imp_glFlush'
/usr/lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mingw32/bin/ld: /usr/lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mingw32/lib/../lib/libQt5Gui.a(qopenglcontext.o): bad reloc address 0x0 in section `.pdata$_ZNK22QPlatformOpenGLContext9isSharingEv'
collect2: error: ld returned 1 exit status

Not sure why this package depends on OpenGL. Tried to install mingw-w64-qt5-base-opengl to see if the error goes away but the package is outdated (my project depends on 5.3).

xantares commented on 2014-06-22 15:15

ok, fixed

Schala commented on 2014-06-22 11:18

rm: cannot remove '/home/admin/yaourt-tmp-admin/aur-mingw-w64-qt5-base-static/pkg/mingw-w64-qt5-base-static/usr/i686-w64-mingw32/share/doc': No such file or directory

ant32 commented on 2014-01-17 16:47

1. Fixed compatibility with mingw-w64-qt5-base
For binaries and repo visit http://mingw-w64-archlinux.sourceforge.net
View Changes https://github.com/ant32/pkgbuild/commits/master/mingw-w64-qt5-base

ant32 commented on 2014-01-16 00:13

I'll fix this later today if I find the time. I don't have access to a computer right now. I'm fairly sure the files need to be deleted from the static build. Thank you for bringing it to my attention.

Svenstaro commented on 2014-01-14 07:30

Please note that between mingw-w64-qt5-base and mingw-w64-qt5-base-static the following files conflict:

mingw-w64-qt5-base-static: /usr/i686-w64-mingw32/lib/libQt5OpenGLExtensions.a exists in filesystem
mingw-w64-qt5-base-static: /usr/i686-w64-mingw32/lib/libQt5PlatformSupport.a exists in filesystem
mingw-w64-qt5-base-static: /usr/x86_64-w64-mingw32/lib/libQt5OpenGLExtensions.a exists in filesystem
mingw-w64-qt5-base-static: /usr/x86_64-w64-mingw32/lib/libQt5PlatformSupport.a exists in filesystem

I think the static libraries should exist in the static package?

ant32 commented on 2014-01-03 05:05

Sorry for that mistake.
The uploaded pkgbuild should now have fixed this
View changes here https://github.com/ant32/pkgbuild/commits/master/mingw-w64-qt5-base
If everything goes well will update repo at http://mingw-w64-archlinux.sourceforge.net in 10 hours

codestation commented on 2014-01-02 22:04

This package is now blocking mingw-w64-qt5-base and mingw-w64-qt5-base-opengl, any reason for this? Since this package doesn't provide qmake you cannot use it to compile anything that depends on qmake.