These are instructions to create the Installer Framework

== Build ==
To build an installer, it is advised to use a statically linked Qt.

== Qt configuration under Windows ==
adjust the qmake.conf to have a real stand alone working installer (at the moment we are using msvc2005, but it should work with msvc2008 as well)

--- a/mkspecs/win32-msvc20XX/qmake.conf
+++ b/mkspecs/win32-msvc20XX/qmake.conf
 
 MAKEFILE_GENERATOR      = MSVC.NET
 TEMPLATE                = app
-CONFIG                  += qt warn_on release incremental flat link_prl precompile_header autogen_precompile_source copy_dir_files debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe
+CONFIG                  += qt warn_on release incremental flat link_prl precompile_header autogen_precompile_source copy_dir_files debug_and_release debug_and_release_target
 QT                      += core gui
 DEFINES                 += UNICODE WIN32 QT_LARGEFILE_SUPPORT
 QMAKE_COMPILER_DEFINES  += _MSC_VER=1400 WIN32
 QMAKE_YACCFLAGS         = -d
 QMAKE_CFLAGS            = -nologo -Zm200 -Zc:wchar_t-
 QMAKE_CFLAGS_WARN_ON    = -W3
 QMAKE_CFLAGS_WARN_OFF   = -W0
-QMAKE_CFLAGS_RELEASE    = -O2 -MD
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
-QMAKE_CFLAGS_DEBUG      = -Zi -MDd
+QMAKE_CFLAGS_RELEASE    = -O2 -MT
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi
+QMAKE_CFLAGS_DEBUG      = -Zi -MTd
 QMAKE_CFLAGS_YACC       =
 QMAKE_CFLAGS_LTCG       = -GL

Recommended configure options for windows:
configure.exe -opensource -release -static -no-multimedia -no-declarative -no-phonon -no-dbus -no-opengl -no-qt3support -no-webkit -no-xmlpatterns -nomake examples -nomake demos

Recommended configure options for Linux and MacOS:
configure -opensource -release -static -qt-zlib -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -no-phonon -no-dbus -no-opengl -no-qt3support -no-webkit -no-xmlpatterns -no-svg -nomake examples -nomake demos
 
== Create an Installer ==

To create an installer, use bin/binarycreator. The create-test-installer batch files run it for the example project:
 
in windows;
cd tests\test-installer
create-test-installer.bat

in unix;
cd tests/test-installer
create-test-installer.sh

   NOTE: Under MacOS you have to copy the dir $QTDIR/src/gui/mac/qt_menu.nib to <INSTALLER_APP_DIR>/Resources/qt_menu.nib.
         for example: cp -r ../../qt4/src/gui/mac/qt_menu.nib ./test-installer-offline.app/Contents/Resources

This creates an installer "test-installer-offline"/"test-installer-online" and the components required by the com.nokia.testapp package(examples\testapp\packages\com.nokia.testapp) in the bin folder.

== Create an Archive ==
To create an 7zip archive named qt-copy.7z that contains the directory qt-copy use:

cd /path/where/qt-copy/is/located
7z a -t7z -mx=9 -ms=off -l qt-copy.7z qt-copy

