--------------------------------开始之前的分割线-----------------------------
为什么不使用 mingw:http://qt-project.org/forums/viewthread/7018/P45/#73324
crtdbg.h 是个硬伤。
windows 下build 不了qtwebkit:http://qt-project.org/forums/viewthread/7018/P60
所以一开始就把qtwebkit 和 qtwebkit-demo删除或者重命名
----------------------------------------------------------------------------------------------
git clone git
:
//gitorious.org/qt/qt5.git qt5 (或者 http://git.gitorious.org/qt/qt5.git qt5)
cd qt5
perl init-repository -f -no-webkit --http #中间断开很多次, perl init-repository --help 查看帮助
set QTDIR
=
set PATH=%CD%\qtbase\bin;%PATH%
configure.bat -platform win32-msvc2008 -developer-build -opensource-fast-nomake examples -nomake tests
全编译:
nmake
编译模块:
make module-qtbase # module-{目录名}
1. Q: NMAKE : fatal error U1073: don't know how to make 'module_qtjsondb-make_default'
A: ./Makefile:403:module-qtlocation-make_default: qtlocation\$(MAKEFILE) module-qtbase-make_default module-qtdeclarative-make_default module-qt3d-make_defaultmodule_qtjsondb-make_default FORCE
2. Bluetoothapis.h C2146: syntax error : missing ';' before identifier 'type'
qtsystems\src\systeminfo\qdeviceinfo_win.cpp : 47行
#include // 后面添加
#include
3. player\directshowmetadatacontrol.cpp(79) : error C2039: 'RatingOrganisation' : i
s not a member of 'QtMultimedia::MetaData'
player\directshowmetadatacontrol.cpp(79) : error C2065: 'RatingOrganisation' : u
ndeclared identifier
4 player\vmr9videowindowcontrol.cpp(90) : error C2664: 'IVMRWindowlessControl9::S
tVideoClippingWindow' : cannot convert parameter 1 from 'WId' to 'HWND'
Conversion from integral type to pointer type requires reinterpret_cast
C-style cast or function-style cast
player\vmr9videowindowcontrol.cpp(141) : error C2664: 'BeginPaint' : cannot con
ert parameter 1 from 'WId' to 'HWND'
Conversion from integral type to pointer type requires reinterpret_cast
C-style cast or function-style cast
player\vmr9videowindowcontrol.cpp(146) : error C2664: 'IVMRWindowlessControl9::
epaintVideo' : cannot convert parameter 1 from 'WId' to 'HWND'
Conversion from integral type to pointer type requires reinterpret_cast
C-style cast or function-style cast
player\vmr9videowindowcontrol.cpp(166) : error C2664: 'EndPaint' : cannot conve
t parameter 1 from 'WId' to 'HWND'
Conversion from integral type to pointer type requires reinterpret_cast
C-style cast or function-style cast
因为不懂git,乱执行语句,造成代码混乱了。
参考:
https://qt-project.org/wiki/Building_Qt_5_from_Git