QtCore.dll missing error after build static app
-
Hi everyone.
I've successfully built static qt based on Document and WiKi
With these options :configure -release -opensource -static -platform win32-msvc2013 -qt-sql-odbc -confirm-license -nomake examples -nomake tests -qt-zlib nmake nmake install
Now i have a 5GB Qt directory called
D:\Qt5.7
and also have qt in my environment.After trying to build my project using this command :
qmake -config release App.pro nmake
I get log :
link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /debug /opt:ref
/INCREMENTAL:NO /Debug /SUBSYSTEM:WINDOWS
"/MANIFESTDEPENDENCY:type='win32'
name='Microsoft.Windows.Common-Controls' version='6.0.0.0'
publicKeyToken='6595b64144ccf1df' language=''
processorArchitecture=''" /MANIFEST:embed /OUT:release\App.exe
@C:\Users<user>\AppData\Local\Temp\nm5AE9.tmpNow i have a 15MB executable
App.exe
witch throw error after running :I'm using Visual Studio 2013(
nmake
) + windows10 + Qt5.7 and.pro
is this :TARGET = App TEMPLATE = app QT += core gui widgets sql network printsupport CONFIG += static LIBS += -L$$PWD/quazip/lib -lquazip INCLUDEPATH += . RESOURCES += app.qrc include($$PWD/breakpad/crash_handler.pri) QMAKE_CFLAGS_RELEASE +=/Zi QMAKE_LFLAGS_RELEASE +=/debug /opt:ref QMAKE_LFLAGS_RELEASE +=/INCREMENTAL:NO /Debug SOURCES += main.cpp\ . . . HEADERS += \ . . .
Dependency walker result :
What is the wrong ?
-
Hi everyone.
I've successfully built static qt based on Document and WiKi
With these options :configure -release -opensource -static -platform win32-msvc2013 -qt-sql-odbc -confirm-license -nomake examples -nomake tests -qt-zlib nmake nmake install
Now i have a 5GB Qt directory called
D:\Qt5.7
and also have qt in my environment.After trying to build my project using this command :
qmake -config release App.pro nmake
I get log :
link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /debug /opt:ref
/INCREMENTAL:NO /Debug /SUBSYSTEM:WINDOWS
"/MANIFESTDEPENDENCY:type='win32'
name='Microsoft.Windows.Common-Controls' version='6.0.0.0'
publicKeyToken='6595b64144ccf1df' language=''
processorArchitecture=''" /MANIFEST:embed /OUT:release\App.exe
@C:\Users<user>\AppData\Local\Temp\nm5AE9.tmpNow i have a 15MB executable
App.exe
witch throw error after running :I'm using Visual Studio 2013(
nmake
) + windows10 + Qt5.7 and.pro
is this :TARGET = App TEMPLATE = app QT += core gui widgets sql network printsupport CONFIG += static LIBS += -L$$PWD/quazip/lib -lquazip INCLUDEPATH += . RESOURCES += app.qrc include($$PWD/breakpad/crash_handler.pri) QMAKE_CFLAGS_RELEASE +=/Zi QMAKE_LFLAGS_RELEASE +=/debug /opt:ref QMAKE_LFLAGS_RELEASE +=/INCREMENTAL:NO /Debug SOURCES += main.cpp\ . . . HEADERS += \ . . .
Dependency walker result :
What is the wrong ?
The docs for CONFIG say:
static The target is a static library (lib only). The proper compiler flags will automatically be added to the project.Therefore, I guess you are still linking with the lib stubs for dlls. Make sure that you are using the qmake generated with the static lib compilation.
-
The docs for CONFIG say:
static The target is a static library (lib only). The proper compiler flags will automatically be added to the project.Therefore, I guess you are still linking with the lib stubs for dlls. Make sure that you are using the qmake generated with the static lib compilation.
Make sure that you are using the qmake generated with the static lib compilation
Yes i'm sure because while i have another qt installation (in another path) but just static bin path is in environment variable so i'm using qmake from
D:\Qt5.7\qtbase\bin
-
Hi
You can try to use it as a kit
https://wiki.qt.io/Building_a_static_Qt_for_Windows_using_MinGW#Using_the_Qt_static_environment"Using the Qt static environment with Qt Creator"
Also I had to edit
C:\Qt\Qt5_static\mkspecs\win32-g++\
(for mingw)
To make it use static.I build static 5.7 following this guide
http://dimitris.apeiro.gr/2015/06/24/build-a-static-qt5-for-windows-by-compiling/ -
Thanks @mrjj .
The Problem was theQuazip
that was linking to dynamic Qt libs witch Dependency walker won't show up at run time.First i should build it as static like so :
TEMPLATE = lib CONFIG += qt warn_on QT -= gui DEFINES += QUAZIP_BUILD CONFIG += staticlib CONFIG(staticlib): DEFINES += QUAZIP_STATIC include(quazip.pri)
Then i should link that in my .pro :
. . . LIBS += -L$$PWD/quazip/ -lquazip INCLUDEPATH += $$PWD/quazip PRE_TARGETDEPS += $$PWD/quazip/quazip.lib DEFINES += QUAZIP_STATIC . . .