общие соображения

Итак сборка из командной строки это наше все. То есть по сути вся сборка практически в любой среде разработки на С++ это сборка консольными утилитами такими как компилятор, линковщик и т.д.

Таким образом по логике всегда можно повторить сборку из IDE через команды консоли.

Qt Creator

Как это делает Qt Creator (2.4.1 например). Сначала как мы уже знаем подготавливаются некие Makefile через специальную утилиту qmake.exe (это про Windows). Qmake это часть фреймворка Qt.

Makefile как раз и есть полный самодостаточный список консольных команд для сборки проекта. Там например прописано какие файлы cpp/h собирать, чем собирать, то есть какие консольные команды и из каких каталогов использовать и т.д. еще много чего там учитывается.

nmake

Теперь, как выясняется, в каждой операционной системе обычно есть некая утилита для полной сборки проектов из этих Makefile-ов. В Windows такая утилита называется nmake.

После того как кто-то создал Makefile можно запускать утилиту nmake в том же каталоге, где находится наш Makefile. Вот пример:

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86

nmake clean
pause

nmake -f Makefile
pause

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat нужен для получения каталогов где находится комплект утилита для сборки от Microsoft (а нашем случае msvc2010). Конкретно будет добавлен в переменную окружения PATH:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin, а там лежат утилиты:
name.exe утилита, которая парсит Makefile и вызывает далее необходимые инструменты, такие как:

cl.exe - компилятор
link.exe - линковщик
....

В общем процесс сборки из командной строки абсолютно такой же, как и из среды разработки. То есть среда разработки (например Qt Creator) также вызывает те же консольные команды.

Вот пример некоторой сборки некоторого проекта, просто для того, что не надо боятся сборки из командной строки:
D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG>call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
Setting environment for using Microsoft Visual Studio 2010 x86 tools.

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Makefile.Release clean

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        del tmp\moc\moc_qpsingleshottimer.cpp tmp\moc\moc_smart_process_dlg.cpp tmp\moc\moc_dialog.cpp tmp\moc\moc_loading.cpp tmp\moc\moc_lk_log_app.cpp tmp\moc\moc_localserver.cpp tmp\moc\moc_dlg_msg.cpp
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\moc\moc_qpsingleshottimer.cpp
        del ui\ui_smart_process_dlg.h ui\ui_dialog.h ui\ui_dlg_msg.h
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\ui\ui_smart_process_dlg.h
        del tmp\obj\qpsingleshottimer.obj tmp\obj\qhashbuilder.obj tmp\obj\meta.obj tmp\obj\smart_process_dlg.obj tmp\obj\qp_gui.obj tmp\obj\dbg.obj tmp\obj\my_map.obj tmp\obj\my_json.obj tmp\obj\orderedobj.obj tmp\obj\pair.obj tmp\obj\my_ntw.obj tmp\obj\my_def.obj tmp\obj\my_digits.obj tmp\obj\qzvariant.obj tmp\obj\main.obj tmp\obj\dialog.obj tmp\obj\loading.obj tmp\obj\lk_log_app.obj tmp\obj\reestr_def.obj tmp\obj\localserver.obj tmp\obj\dlg_msg.obj tmp\obj\moc_qpsingleshottimer.obj tmp\obj\moc_smart_process_dlg.obj tmp\obj\moc_dialog.obj tmp\obj\moc_loading.obj tmp\obj\moc_lk_log_app.obj tmp\obj\moc_localserver.obj tmp\obj\moc_dlg_msg.obj
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\qpsingleshottimer.obj
        del tmp\obj\\BIT_driverKKT.intermediate.manifest
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\BIT_driverKKT.intermediate.manifest
        del tmp\obj\\starter_rc_info.res
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\starter_rc_info.res
        "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Makefile.Debug clean

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        del tmp\moc\moc_qpsingleshottimer.cpp tmp\moc\moc_smart_process_dlg.cpp tmp\moc\moc_dialog.cpp tmp\moc\moc_loading.cpp tmp\moc\moc_lk_log_app.cpp tmp\moc\moc_localserver.cpp tmp\moc\moc_dlg_msg.cpp
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\moc\moc_qpsingleshottimer.cpp
        del ui\ui_smart_process_dlg.h ui\ui_dialog.h ui\ui_dlg_msg.h
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\ui\ui_smart_process_dlg.h
        del tmp\obj\qpsingleshottimer.obj tmp\obj\qhashbuilder.obj tmp\obj\meta.obj tmp\obj\smart_process_dlg.obj tmp\obj\qp_gui.obj tmp\obj\dbg.obj tmp\obj\my_map.obj tmp\obj\my_json.obj tmp\obj\orderedobj.obj tmp\obj\pair.obj tmp\obj\my_ntw.obj tmp\obj\my_def.obj tmp\obj\my_digits.obj tmp\obj\qzvariant.obj tmp\obj\main.obj tmp\obj\dialog.obj tmp\obj\loading.obj tmp\obj\lk_log_app.obj tmp\obj\reestr_def.obj tmp\obj\localserver.obj tmp\obj\dlg_msg.obj tmp\obj\moc_qpsingleshottimer.obj tmp\obj\moc_smart_process_dlg.obj tmp\obj\moc_dialog.obj tmp\obj\moc_loading.obj tmp\obj\moc_lk_log_app.obj tmp\obj\moc_localserver.obj tmp\obj\moc_dlg_msg.obj
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\qpsingleshottimer.obj
        del tmp\obj\\BIT_driverKKT.intermediate.manifest debug\BIT_driverKKT.ilk vc*.pdb vc*.idb
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\BIT_driverKKT.intermediate.manifest
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\debug\BIT_driverKKT.ilk
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\vc*.pdb
        del tmp\obj\\starter_rc_info.res
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\starter_rc_info.res
        del "tmp\obj\\BIT_driverKKT.intermediate.manifest"
Could Not Find D:\DEVELOPMENT\QT4\_MY__\driver_KKT_BIT\app_starter_DBG\tmp\obj\BIT_driverKKT.intermediate.manifest
Press any key to continue . . .

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Makefile.Release

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        d:\QtSDK1.2.1\QtSources\4.8.1\bin\uic.exe ..\..\my_lib\qp\gui\smart_process_dlg.ui -o ui\ui_smart_process_dlg.h
Qt: Untested Windows version 6.2 detected!
        d:\QtSDK1.2.1\QtSources\4.8.1\bin\uic.exe ..\app_starter\dialog.ui -o ui\ui_dialog.h
Qt: Untested Windows version 6.2 detected!
        d:\QtSDK1.2.1\QtSources\4.8.1\bin\uic.exe ..\app_starter\dlg_msg.ui -o ui\ui_dlg_msg.h
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\..\my_lib\qp\meta\qpsingleshottimer.h -o tmp\moc\moc_qpsingleshottimer.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\..\my_lib\qp\gui\smart_process_dlg.h -o tmp\moc\moc_smart_process_dlg.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\app_starter\dialog.h -o tmp\moc\moc_dialog.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\app_starter\loading.h -o tmp\moc\moc_loading.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\app_starter\lk_log_app.h -o tmp\moc\moc_lk_log_app.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\app_starter\localserver.h -o tmp\moc\moc_localserver.cpp
Qt: Untested Windows version 6.2 detected!
        D:\QtSDK1.2.1\QtSources\4.8.1\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -D_MSC_VER=1600 -DWIN32 ..\app_starter\dlg_msg.h -o tmp\moc\moc_dlg_msg.cpp
Qt: Untested Windows version 6.2 detected!
        rc -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -fo tmp\obj\\starter_rc_info.res ..\app_starter\starter_rc_info.rc
Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm3AB.tmp
qpsingleshottimer.cpp
..\..\my_lib\qp\meta\qpsingleshottimer.cpp(13) : warning C4100: 'parent' : unreferenced formal parameter
qhashbuilder.cpp
meta.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm9B7.tmp
smart_process_dlg.cpp
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'fldName' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'mdl' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(104) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_NODES' when no variable is declared
..\..\my_lib\qp/db/db.h(148) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_STYLE' when no variable is declared
..\..\my_lib\qp/db/db.h(184) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION_D' when no variable is declared
..\..\my_lib\qp/db/db.h(204) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION' when no variable is declared
..\..\my_lib\qp/db/db.h(231) : warning C4091: 'typedef ' : ignored on left of 'qp::db::aaa' when no variable is declared
..\..\my_lib\qp/db/db.h(262) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL' when no variable is declared
..\..\my_lib\qp\gui\smart_process_dlg.cpp(134) : warning C4189: 'ww' : local variable is initialized but not referenced
..\..\my_lib\qp\gui\smart_process_dlg.cpp(149) : warning C4100: 'min' : unreferenced formal parameter
qp_gui.cpp
..\..\my_lib\qp\gui\qp_gui.cpp(75) : warning C4390: ';' : empty controlled statement found; is this the intent?
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nmED8.tmp
dbg.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm1198.tmp
my_map.cpp
d:\development\qt4\_my__\my_lib\my_map\my_map.h(31) : warning C4091: 'typedef ' : ignored on left of 'myMap::jsonRes' when no variable is declared
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm139D.tmp
my_json.cpp
..\..\my_lib\common\json\my_json.cpp(58) : warning C4018: '<' : signed/unsigned mismatch
..\..\my_lib\common\json\my_json.cpp(94) : warning C4018: '<' : signed/unsigned mismatch
..\..\my_lib\common\json\my_json.cpp(326) : warning C4018: '<' : signed/unsigned mismatch
orderedobj.cpp
pair.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm18BF.tmp
my_ntw.cpp
my_def.cpp
my_digits.cpp
qzvariant.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm1E1F.tmp
main.cpp
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'fldName' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'mdl' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(104) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_NODES' when no variable is declared
..\..\my_lib\qp/db/db.h(148) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_STYLE' when no variable is declared
..\..\my_lib\qp/db/db.h(184) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION_D' when no variable is declared
..\..\my_lib\qp/db/db.h(204) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION' when no variable is declared
..\..\my_lib\qp/db/db.h(231) : warning C4091: 'typedef ' : ignored on left of 'qp::db::aaa' when no variable is declared
..\..\my_lib\qp/db/db.h(262) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL' when no variable is declared
dialog.cpp
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'fldName' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'mdl' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(104) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_NODES' when no variable is declared
..\..\my_lib\qp/db/db.h(148) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_STYLE' when no variable is declared
..\..\my_lib\qp/db/db.h(184) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION_D' when no variable is declared
..\..\my_lib\qp/db/db.h(204) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION' when no variable is declared
..\..\my_lib\qp/db/db.h(231) : warning C4091: 'typedef ' : ignored on left of 'qp::db::aaa' when no variable is declared
..\..\my_lib\qp/db/db.h(262) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL' when no variable is declared
d:\development\qt4\_my__\driver_kkt_bit\app_starter\lk_log_app.h(5) : warning C4067: unexpected tokens following preprocessor directive - expected a newline
..\app_starter\dialog.cpp(218) : warning C4189: 'bbb' : local variable is initialized but not referenced
loading.cpp
lk_log_app.cpp
d:\development\qt4\_my__\driver_kkt_bit\app_starter\lk_log_app.h(5) : warning C4067: unexpected tokens following preprocessor directive - expected a newline
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'fldName' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(20) : warning C4100: 'mdl' : unreferenced formal parameter
..\..\my_lib\qp/db/db.h(104) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_NODES' when no variable is declared
..\..\my_lib\qp/db/db.h(148) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL_STYLE' when no variable is declared
..\..\my_lib\qp/db/db.h(184) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION_D' when no variable is declared
..\..\my_lib\qp/db/db.h(204) : warning C4091: 'typedef ' : ignored on left of 'qp::db::SECTION' when no variable is declared
..\..\my_lib\qp/db/db.h(231) : warning C4091: 'typedef ' : ignored on left of 'qp::db::aaa' when no variable is declared
..\..\my_lib\qp/db/db.h(262) : warning C4091: 'typedef ' : ignored on left of 'qp::db::CELL' when no variable is declared
..\..\my_lib\my_map/my_map.h(31) : warning C4091: 'typedef ' : ignored on left of 'myMap::jsonRes' when no variable is declared
localserver.cpp
dlg_msg.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm2C97.tmp
reestr_def.cpp
        cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MT -GR -EHsc -GL -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DSTATIC_MODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtCore" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtNetwork" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\QtGui" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include" -I"..\app_starter" -I"..\..\..\_MY__" -I"..\..\my_lib" -I"..\..\my_lib\qp" -I"d:\OpenSSL\1_0_2_static\include" -I"d:\QtSDK1.2.1\QtSources\4.8.1\include\ActiveQt" -I"tmp\moc" -I"ui" -I"." -I"d:\QtSDK1.2.1\QtSources\4.8.1\mkspecs\win32-msvc2010" -Fotmp\obj\ @C:\Users\p\AppData\Local\Temp\nm2E1E.tmp
moc_qpsingleshottimer.cpp
moc_smart_process_dlg.cpp
moc_dialog.cpp
moc_loading.cpp
moc_lk_log_app.cpp
d:\development\qt4\_my__\driver_kkt_bit\app_starter_dbg\tmp\moc\../../../app_starter/lk_log_app.h(5) : warning C4067: unexpected tokens following preprocessor directive - expected a newline
moc_localserver.cpp
moc_dlg_msg.cpp
        link /LIBPATH:"d:\QtSDK1.2.1\QtSources\4.8.1\lib" /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /LTCG /MANIFEST /MANIFESTFILE:"tmp\obj\\BIT_driverKKT.intermediate.manifest" /OUT:release\BIT_driverKKT.exe @C:\Users\p\AppData\Local\Temp\nm3A25.tmp
Generating code
Finished generating code
        mt.exe -nologo -manifest "tmp\obj\\BIT_driverKKT.intermediate.manifest" -outputresource:release\BIT_driverKKT.exe;1
Press any key to continue . . .

Обратите внимание сколько утилит использует Makefile, подготовленный через qmake:
uic.exe - генератор кода из ui форм (от  Qt)
moc.exe - метаобъектный компилятор (от  Qt), генерирует файлы moc_****.cpp
cl - это компилятор от MS
link - это линковщик от MS
rc - это генератор данных по содержанию файла ресурсов *.rc.

Таким образом Makefile это наше все. Это практически стандарт в мире программирования и работает он на разных операционных системах. Пришел он кстати похоже из Linux (что не удивительно).

Смена статической сборки на отладочную

Надо отметить один важный нюанс для понимания релизной статической сборки и отладочной. Дело в том, что Makefile после использования qmake у нас не один, но еще генерируется Makefile.Debug и Makefile.Release.

Так вот все эти три файла мы допустим не меняем (т.е. qmake больше не запускаем), но делаем переконфигурацию среды Qt через консольную утилиту config.exe.

И в результате после этого теперь идет сборка дебажной версии.

То есть в в зависимости от настройки фала ..\mkspecs\win32-msvc2010\qmake.conf сборка пойдет либо по пути:
Makefile + Makefile.Release
либо по пути:
Makefile + Makefile.Debug

Какие есть проблемы

Сборка другим набором msvc

Допустим вы захотите собрать эти же makefile-ы другим набором инструмента от майкрософт например MSVC2015 и у вас это не получится по нескольким причинам.

1. cl.exe исчез из поставки MSVC, это решаем указанием набора 8.1
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 8.1 

2. error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1900' in qpsingleshottimer.obj   - то есть в makefile прописана сборка конкретным набором msvc2010

Вы можете в Makefile.Debug убрать ключи, связанные _MSC_VER, но ошибка не исчезнет, так как надо пересобирать библиотеки самого qt с _MSC_VER=1900 и это есть проблема посерьезнее.

То есть библиотеки qt собраны с _MSC_VER=1600, а наш проект собирается в _MSC_VER=1900 и это не допустимо (почему-то).



А какие есть альтернативы

Современная альтернатива это CMAKE