diff options
author | Jonathan Liu <net147@gmail.com> | 2011-04-04 11:01:48 (GMT) |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2011-04-04 11:01:56 (GMT) |
commit | a6d48ca57403539ab8e00d16f80bd4cd334e1b5c (patch) | |
tree | c1a33a184fb4b110abc58c6475029cd0f223fd70 | |
parent | 0170a4dd8a720921e591622188bd1f11d9fe357b (diff) | |
download | Qt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.zip Qt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.tar.gz Qt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.tar.bz2 |
win32-g++: Correct the order of linked Windows libraries
On Windows 7, kernel32.dll exports many of the same functions as
advapi32.dll. If executables link to these functions in kernel32.dll
instead of advapi32.dll, running these executables on older versions
of Windows will cause an entry point error. This would occur due to
kernel32 being specified before advapi32.
To resolve this issue, advapi32 is specified before kernel32 when
linking.
Task-number: QTBUG-18537
Merge-request: 1169
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
-rw-r--r-- | mkspecs/win32-g++/qmake.conf | 2 | ||||
-rw-r--r-- | qmake/Makefile.win32-g++ | 2 | ||||
-rw-r--r-- | qmake/Makefile.win32-g++-sh | 2 | ||||
-rw-r--r-- | qmake/qmake.pri | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf index 1469abd..220af32 100644 --- a/mkspecs/win32-g++/qmake.conf +++ b/mkspecs/win32-g++/qmake.conf @@ -67,7 +67,7 @@ QMAKE_EXTENSION_STATICLIB = a QMAKE_LIBS = -QMAKE_LIBS_CORE = -lkernel32 -luser32 -lshell32 -luuid -lole32 -ladvapi32 -lws2_32 +QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 QMAKE_LIBS_NETWORK = -lws2_32 QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32 diff --git a/qmake/Makefile.win32-g++ b/qmake/Makefile.win32-g++ index 29fbd0a..5a46e41 100644 --- a/qmake/Makefile.win32-g++ +++ b/qmake/Makefile.win32-g++ @@ -28,7 +28,7 @@ CFLAGS = -c -o$@ -O \ -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT CXXFLAGS = $(CFLAGS) LFLAGS = -static-libgcc -static-libstdc++ -s -LIBS = -lole32 -luuid +LIBS = -lole32 -luuid -ladvapi32 -lkernel32 LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS) ADDCLEAN = diff --git a/qmake/Makefile.win32-g++-sh b/qmake/Makefile.win32-g++-sh index 9c7942c..6ca7514 100644 --- a/qmake/Makefile.win32-g++-sh +++ b/qmake/Makefile.win32-g++-sh @@ -28,7 +28,7 @@ CFLAGS = -c -o$@ -O \ -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT CXXFLAGS = $(CFLAGS) LFLAGS = -static-libgcc -static-libstdc++ -s -LIBS = -lole32 -luuid +LIBS = -lole32 -luuid -ladvapi32 -lkernel32 LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS) ADDCLEAN = diff --git a/qmake/qmake.pri b/qmake/qmake.pri index 8f46a2e..3a0ab12 100644 --- a/qmake/qmake.pri +++ b/qmake/qmake.pri @@ -135,7 +135,7 @@ bootstrap { #Qt code SOURCES += qfsfileengine_win.cpp qfsfileengine_iterator_win.cpp qsettings_win.cpp \ qsystemlibrary.cpp win32-msvc*:LIBS += ole32.lib advapi32.lib - win32-g++*:LIBS += -lole32 -luuid + win32-g++*:LIBS += -lole32 -luuid -ladvapi32 -lkernel32 } qnx { |