Building on a static version of qt
-
Hello All,
Recently I've searched all over the internet related to this issue. I've not yet found an answer that works with Qt Creator (Qt SDK Package 1.1.3).
What I am attempting to do is simple. I would like to statically build my Qt Applications so I can distribute them without shipping all the big dynamic library files like QtCore4.dll and similar. I am pretty sure almost everyone knows how to do this, so please, if you know how (in Qt SDK 1.1.3), can you help me out? Thanks! :)
From what I know, I think I need to build a separate build of Qt4 (without the creator and such, just the framework alone), and do a command like configure -static, then select in Qt Creator (in the original all-in-one SDK install) to include the static build in options.
The biggest issue I've encountered so far is that the official Qt Documentations (at the time written probably) are assuming I am using a older version of the Qt SDK and/or Qt Creator with a build of Qt4 combined. I know this is true and can be done around a year ago when I've started using Qt, but nowadays I can't seem to find the corresponding directories in the new all-in-one SDK. i.e. Documentations tells me to run Path-To-Qt-SDK\bin\qtenv.bat, there are no such file as qtenv.bat, there are only qtenv2.bat, qtenv3.bat, and similar, located in various locations throughout the SDK (Simulator, Desktop, Symbian... etc. I assumed everything was Desktop since all my apps are written against windows desktop platforms, but... it just didn't work)
Any tutorials/docs on this small issue of mine would be helpful. :)
Thanks!
-
[quote author="X9DN" date="1314934967"]Recently I've searched all over the internet related to this issue. I've not yet found an answer that works with Qt Creator (Qt SDK Package 1.1.3).[/quote]
"Here":http://developer.qt.nokia.com/wiki/How_to_build_a_static_Qt_version_for_Windows_with_gcc you go.
I would recommend downloading the "source tarball":http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.zip or fetching the sources directly from "gitorious":http://qt.gitorious.org/qt. qtenv2.bat is at Desktop/Qt/4.7.4/mingw/bin.
[quote author="X9DN" date="1314934967"]What I am attempting to do is simple. I would like to statically build my Qt Applications so I can distribute them without shipping all the big dynamic library files like QtCore4.dll and similar.[/quote]
You will most probably need a commercial Qt license then.
-
http://developer.qt.nokia.com/wiki/How_to_build_a_static_Qt_version_for_Windows_with_gcc
LOL that's exactly where I've looked at already- will try agian
and no - I am not building commercial apps, I build them for my school's programming club and some other friends as well. No profit is being made.
-
[quote author="X9DN" date="1314974704"]so... you can't link statically under LGPL...?! Because then every app I write is at least 100 MB+ in size... which the school does not allow because their shared network drive is so small...[/quote]
You're probably using debud DLLs? Compile release, and use release DLLS, they are 5MB (at least used to be, it's been a while since I've been on Windows).
-
<Qt Root folder>\Desktop\Qt\4.7.3\mingw\bin
Here you can find, The dlls you require. When you take debug version, for example , QtCored4.dll its about 31mb. But what exactly you need is QtCore4.dll and is about 2.5 mb.
same case for other libraries.
Anyway, you are building statically, and you must be building the debug version.