Fix linking of non-console application on mingw
As a result of b5af1408099d the link dependency to the mingw32 static library was ordered after the entrypoint library, which resulted in the WinMain symbol not being found during linking due to how the static linker processes archives. Fixes: QTBUG-87725 Change-Id: I8e075f91f7f06dcdc618a4e0ae6d9c1d832888c0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
0948846b42
commit
4ad464461f
@ -1,2 +1,11 @@
|
||||
qt:!console:contains(TEMPLATE, ".*app"): \
|
||||
qt:!console:contains(TEMPLATE, ".*app") {
|
||||
# This library needs to come before the entry-point library in the
|
||||
# linker line, so that the static linker will pick up the WinMain
|
||||
# symbol from the entry-point library. Unfortunately qmake and the
|
||||
# module system doesn't allow specifying linker flags or dependencies
|
||||
# as part of the module that end up _before_ the library itself, so
|
||||
# we have to work around it by declaring the dependency here.
|
||||
mingw: LIBS += -lmingw32
|
||||
|
||||
QT_PRIVATE += entrypoint
|
||||
}
|
||||
|
@ -23,7 +23,6 @@ win32 {
|
||||
mingw {
|
||||
DEFINES += QT_NEEDS_QMAIN
|
||||
MODULE_DEFINES += QT_NEEDS_QMAIN
|
||||
LIBS += -lmingw32
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user