рдЖрдиреЗ рдХреЗ рд╕рд╛рде рд╕рднреА!
рдбрд┐рдЬреАрдпрд╛ рдХреЗрд╡рд▓ рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдХреЗ рд▓рд┐рдП рдХреЙрдкреА рдХрд┐рдП рдЧрдП рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдХреНрдпреВрдЯреА 5 рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдЬреЛ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣
- рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЗрд╡рд▓ VS2010 рдФрд░ рд╡рд┐рдЬреБрдЕрд▓ C ++ 2010 рд░рдирдЯрд╛рдЗрдо рдирд┐рд░реНрднрд░рддрд╛ (msvcr100.dll, msvcp100.dll) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмрд╣реБрдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
- Qt5Core.dll (рдФрд░ рддрджрдиреБрд╕рд╛рд░ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди) рдЖрдИрд╕реАрдпреВ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ред рдпреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд dll рд╣реИрдВ: icuin49.dll, icudt49.dll, icuuc49.dll
- рдХреЛрдг рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ Qt5Gui.dll рдирд┐рд░реНрднрд░рддрд╛ред рдпреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд dll рд╣реИрдВ - libEGL.dll, libGLESv2.dll
рдЕрдВрдд рдореЗрдВ, рд╣рдо рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп
Microsoft Visual C ++ 2008 Redistributable рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмрд╛рдж рдХреЗ рд╡рд┐рддрд░рдг рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рдХреНрдпрд╛ рдЬрд░реВрд░рдд рд╣реИ?
рдзреНрдпрд╛рди рджреЗрдВ: рдЪреВрдВрдХрд┐ рдореБрдЭреЗ qtactiveqt, qtdeclarative, qtwebkit рдФрд░ рдЕрдиреНрдп рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ qtbase (Qt5Core / Qt5Gui / Qt5Network / Qt5Widgets / Qt5Sql / etc) рдФрд░ qttools (рд╕рд╣рд╛рдпрдХ, рдбрд┐рдЬрд╝рд╛рдЗрдирд░, рдЖрджрд┐) рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдЖрджрд┐ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдЬрдмрдХрд┐, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╕рдордп, рд░реВрдЯ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдиреЛрдЯ 2 : рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, qt5 OpenGL 2 / рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
DirectX SDK рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЪреВрдВрдХрд┐ рдореБрдЭреЗ QML2 рдФрд░ OpenGL2 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдореИрдВ
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ -opengl рдбреЗрд╕реНрдХрдЯреЙрдк рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреЛ QtGui рдХреЛ рдкреБрд░рд╛рдиреЗ opengl32.dll (рдХрд┐рд╕реА рднреА Windows XP рдФрд░ рдЙрдЪреНрдЪрддрд░ рдкрд░ OpenGL 1.1 рдорд╛рдирдХ рдЙрдкрд▓рдмреНрдз рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИред рдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдбрд╛рдпрд░реЗрдХреНрдЯрдПрдХреНрд╕ рдПрд╕рдбреАрдХреЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗ рд╕рд╛рде рднреА рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ Qt5Gui.dll рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ 2 рдЕрддрд┐рд░рд┐рдХреНрдд DLL рд╣реЛрдВрдЧреЗ - libEGL.dll рдФрд░ libGLESv2.dllред
рд╕рдВрдХрд▓рди
- рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ qt- рд╣рд░ рдЬрдЧрд╣ рдЦреБрд▓рддрд╛- src-5.3.0.tar.gz рд╕рдВрдЧреНрд░рд╣ рдЕрдирдкреИрдХ рдХрд░реЗрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрд╣ C: \ qt рд╣реИ
- Qt 5 рдореЗрдВ рдПрдХ рдЕрддрд┐ рд╕реВрдХреНрд╖реНрдо рдЕрдВрддрд░ рд╣реИ рдЬреЛ рдЖрддреНрдо-рд╕рдВрдХрд▓рди рдХреЛ рд░реЛрдХрддрд╛ рд╣реИред рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рд╛рдЗрди рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ
if not exist %QTSRC%\.gitignore goto sconf
qtbase \ config.bat рдлрд╝рд╛рдЗрд▓ рдореЗрдВ - рд╣рдо C: \ qt рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ qt5vars.cmd рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ:
CALL "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86 set PATH=c:\qt\qtbase\bin;c:\qt\qtrepotools\bin;c:\qt\gnuwin32\bin;%PATH% set QMAKESPEC=win32-msvc2008 cd qtbase
рдЕрдм рдЙрд╕реА рдЬрдЧрд╣ рдкрд░ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╢реЙрд░реНрдЯрдХрдЯ ( cmd.lnk ) рдмрдирд╛рддреЗ рд╣реИрдВ:
рдСрдмреНрдЬреЗрдХреНрдЯ :% SystemRoot% \ system32 \ cmd.exe% SystemRoot% \ system32 \ cmd.exe / E: ON / V: ON /kc :\qt\qt5vars.cmd
рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ : c: \ qt
- Cmd.lnk рдХреЛ рдЪрд▓рд╛рдПрдВ рдФрд░ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рдмреАрдЪ рдЖрдк рдХреЙрдлреА рдкреА рд╕рдХрддреЗ рд╣реИрдВ:
Qtbase рдмрд┐рд▓реНрдб
configure -opengl desktop -no-plugin-manifests -mp -nomake tests -D "_BIND_TO_CURRENT_VCLIBS_VERSION=1" nmake
рдиреЛрдЯ 1 рдореИрдВ рд╣рдореЗрд╢рд╛ "-BIND_TO_CURRENT_VCLIBS_VERSION = 1" рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдореЗрд╢рд╛ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд░рди-рдЯрд╛рдЗрдо рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реВрдВ (рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреНрдпреВрдЯреА рдХрд╛ рд╕рдВрдХрд▓рди рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдПрдХ рд╕реЗ рдПрдХ рдЕрд▓рдЧ рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ)ред рдЙрд╕реА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрд╡рдпрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд░рд┐рдорд╛рд░реНрдХ 2 -рдиреЛ-рдкреНрд▓рдЧрдЗрди-рдореЗрдирд┐рдлрд╝реЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдирд┐рдлрд╝реЗрд╕реНрдЯ рдХреЛ DLL рдкреНрд▓рдЧ-рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╡рд┐рдЬреБрдЕрд▓ C ++ рд░рд┐рдбрд┐рд╕реНрдЯреНрд░рд┐рдмрдПрдмрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдкреБрд░рд╛рдирд╛ рдмрдЧ рд╣реИ ред
Qttools рдХрд╛ рдирд┐рд░реНрдорд╛рдг
cd ..\qttools qmake nmake nmake docs cd ..\qtbase nmake docs
рдЖрд╡реЗрджрди рд╡рд┐рддрд░рдг
рд╡рд┐рдЬрд╝реБрдЕрд▓ C ++ 2008 Redistrubutable рдкреИрдХреЗрдЬ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рд░рд▓ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛
рдЖрдкрдХреЗ рд╕рд╛рде 3 рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ:
msvcp90.dll, msvcr90.dll рдФрд░ Microsoft.VC90.CRT.manifest
рдпрд╣ рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрд╛ рдПрдХ рдХрд╛рдлреА рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд┐рд╕рдиреЗ Qt4 рд╕реЗ Qt5 рддрдХ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рдкрд╣рд▓реЗ, рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ 3 Qt рдореЙрдбреНрдпреВрд▓ рдереЗ - QtCore4.dll, QtGui4.dll, QtNetwork4.dllред рдЕрдм 4 рдХреНрдпреВрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИрдВ: Qt5Core.dll, Qt5Gui.dll, Qt5Network.dll, Qt5Widgets.dllред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдЕрднреА рднреА рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдкреНрд▓рдЧрдЗрди рдЕрдкрдиреЗ рд╕рд╛рде рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ - qtbase \ plugins \ platform \ qwindows.dll, рдпрд╣ Qt5 рдореЗрдВ OSes рд╕реЗ рдЕрдореВрд░реНрддрди рдХреЗ рд╕реНрддрд░ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИред рдпрд╣ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд░реВрдк рд╕реЗ рднрд░рд╛ рд╣реБрдЖ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рддреБрд░рдВрдд рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ рдХрд┐ рдЖрд╡реЗрджрди рдПрдХ рд╕рд╛рдл рдорд╢реАрди рдкрд░ рдХреНрдпреЛрдВ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реВрдЪреА рдмрдирд╛рдИ рдХрд┐ рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
- myapp.exe
- Qt5Core.dll, Qt5Gui.dll, Qt5Network.dll, Qt5Wgets.dll
- msvcp90.dll, msvcr90.dll, Microsoft.VC90.CRT.manifest
- рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ \ qwindows.dll
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдЗрд╕ рд╕реЗрдЯ рдХреЗ рдмрд╛рдж, рдЖрдк рд╣рд░ рдЬрдЧрд╣ рдФрд░ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд╛ 100% рд▓реЙрдиреНрдЪ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
PS рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд░реВрдкреЛрдВ рдпрд╛ SQL рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдЖрдкрдХреЛ рдЕрднреА рднреА рд╕рдВрдмрдВрдзрд┐рдд DLL рдХреЛ рдЗрдореЗрдЬрдлреЙрд░реНрдо рдпрд╛ sqldrivers рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдлреЗрдВрдХрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред