在Windows 7和msvc下编译QT 5.3.2

时间:2014-10-21 21:27:34

标签: c++ windows visual-studio qt

我正在使用msvc 2013(终极64位),Windows 7 64位。 我通过msvc 2013(64位)编译了icu4c 54.1。

现在我尝试编译 qt 5.3.2-everywhere-opensource-src (我在那里添加了补丁(我替换了QWebFrame.cpp))

我使用了visual studio的CMD开发工具。

---我执行了这些命令:

  1. cd D:\qt
  2. d:
  3. configure -prefix D:\Qt\Qt_making -platform win32-msvc2013 -opensource -c++11 -make tools -make libs -qt-sql-sqlite -no-openssl -icu -I C:\icu-53.1-vs2013\include -L C:\icu-53.1-vs2013\lib64 //一切正常 - 毕竟,包括已加载/新的icu libs
  4. nmake
  5. 4次命令后,进程中断。并显示错误:

    with:36 unresolved externals这些“未解决的外部”可能与libs有关。

    我制作了这些错误的屏幕(如下):

    Errors

    那么什么错?

    我必须编译QT(特别是QWebKit - 因为补丁都是64位的。)

1 个答案:

答案 0 :(得分:1)

我最后一次为Windows编译Qt(为了获得OpenGL的桌面版本),这就是我需要做的事情。请注意,这是VS2010和Qt 5.0.0(在Windows 7上)。

set CL=/MP

if not compiling qtwebkit:
    Need to rename/delete the qtwebkit* directories (there's a -no-webkit option but it doesn't work in 5.0.0)
else:
    Need ICU, GNU bison, and GNU gperf (either install the prebuilt binaries or build yourself)

if using ICU (required for qtwebkit):
    set LIB=%LIB%;C:\icu\lib
    set INCLUDE=%INCLUDE%;C:\icu\include
    set PATH=C:\icu\bin;%PATH%

set PATH=%PATH%;C:\Program Files (x86)\gperf\bin;C:\bison\bin
cd <path>\qt-everywhere-opensource-src-<version>
configure -prefix C:\Qt\Qt5.0.0-opengl-desktop -opensource -debug-and-release -platform win32-msvc2010 -opengl desktop -no-cetest -nomake tests -nomake examples -confirm-license -ltcg -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -mp
nmake
nmake install

if used ICU:
    copy all the DLLs from C:\icu\bin to C:\Qt\Qt5.0.0-opengl-desktop\bin