Documentation/Labs/Qt484
From Slicer Wiki
Home < Documentation < Labs < Qt484
- To compile Qt with VS 2012 (VS 11) for 64 bit:
- 4.8.4 does not compile under VS 2012 but it compiles with a patch (see below).
- Note that if you compile something greater than 4.8.4, you'd need to change
set(Slicer_EXPERIMENTAL_QT_VERSION "4.8.4")
in Slicer's CMakeLists.txt.
- Note that if you compile something greater than 4.8.4, you'd need to change
- Install perl (I used [1] and choose 64 bit version)
- Build/install in say
C:\QtHacked
.
- Build/install in say
- Cd into this directory and git clone git://gitorious.org/qt/qt (this gives a pre-release version, in this case as per 6/19/2013,
mkspecs/qconfig.pri
provides version info: QT_VERSION = 4.8.5). Alternatively, find zipped file of official release [2]. As per 6/20/2013 you need to address the next item, whatever the version you have.
- Cd into this directory and git clone git://gitorious.org/qt/qt (this gives a pre-release version, in this case as per 6/19/2013,
- There is bug that must be addressed: Qt 4.8.5 doesn't compile with VC 11, marked P2:important. To circumvent, replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with HashSet.h.
- Use VS command prompt "x64 Cross Tools".
- Then paste the following (-mp for multiprocessor use during build). (Adjust perl path as necessary.)
set QTDIR=C:\QtHacked\Qt set PATH=%QTDIR%\bin;%PATH% set QMAKESPEC=win32-msvc2012 cd /D %QTDIR%\ set PATH=C:\Perl64\bin;%PATH% configure -release -mp -opensource -platform win32-msvc2012
Then go brew a pot of coffee and come back. If something fails at this point, you probably didn't install "Update 2" for VS 2012. Then,
nmake
Now you have a few hours for yourself. When the build is done, you can test it by say running "C:\QtHacked\qt\bin\qtdemo.exe".