QT5.6 windows10 64bit build from source failing...



  • Anyone having problems getting a 64bit windows build from source? I'm following the steps in the online doco outlined exactly but I'm getting all sorts of errors. And have also tried some variations.

    linker cd errors, compiler not supported, etc, etc...

    I can do a 32bit build OK. But as soon as I specify amd64 there's no end of trouble.

    Also, I can't to a -opengl desktop build for winrt. It complains that a non opengl build is not an option??

    I have visual studio 2015 community installed.


  • Moderators

    Without more details (at which step does it fail? what error do you get?...) it is not possible to see what is the problem.


  • Moderators

    Is there a reason why you try to build Qt?
    Why not just use the installer?



  • Did you include the "x64 Compilers and Tools" option when you installed VS?

    I'm not sure how it is for VS 2015 Community Edition, but back in the days of the free "Express" editions, those free versions never included the x64 compilers, but you could still install them separately by downloading the latest Windows SDK. (I can't see any MS documentation as to if that's still the case or not - maybe its not an issue any more?).



  • @jsulm Here are some details about the config and where it's falling over

    I'm doing a shadow build using a git check out.

    This is the git info

    PS> git remote show origin

    • remote origin
      Fetch URL: git://code.qt.io/qt/qt5.git
      Push URL: git://code.qt.io/qt/qt5.git
      HEAD branch: 5.6
      Remote branches:
      5.3 tracked
      5.3.0 tracked
      5.3.1 tracked
      5.3.2 tracked
      5.4 tracked
      5.4.0 tracked
      5.4.1 tracked
      5.4.2 tracked
      5.5 tracked
      5.5.0 tracked
      5.5.1 tracked
      5.6 tracked
      5.6.0 tracked
      5.7 tracked
      dev tracked
      Local branch configured for 'git pull':
      5.6 merges with remote 5.6
      Local ref configured for 'git push':
      5.6 pushes to 5.6 (up to date)

    launch a cmd prompt with the following vars.cmd passing it %1=win32-msvc2015 for the qmakespec

    @echo Building for %1
    @CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 // <--x86 build
    SET _ROOT=D:\qt5
    SET PATH=%_ROOT%\qtbase\lib;%_ROOT%\qtbase\bin;%_ROOT%\gnuwin32\bin;%PATH%
    REM Uncomment the below line when using a git checkout of the source repository
    SET PATH=%_ROOT%\qtrepotools\bin;%PATH%
    SET QMAKESPEC=%1
    SET _ROOT=

    ..\qt5\configure -opensource -confirm-license -opengl desktop -prefix d:\qt-raw

    Environment:
    INCLUDE=
    C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE
    C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE
    C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt
    C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um
    C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\shared
    C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\um
    C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\winrt

    LIB=
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\LIB
      C:\Program Files (x86)\Windows Kits\10\lib\10.0.10586.0\ucrt\x86
      C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\lib\um\x86
      C:\Program Files (x86)\Windows Kits\10\lib\10.0.10586.0\um\x86
    
    PATH=
      D:\qt5\qtrepotools\bin
      D:\qt5\qtbase\lib
      D:\qt5\qtbase\bin
      D:\qt5\gnuwin32\bin
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
      C:\Program Files (x86)\MSBuild\14.0\bin
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools
      C:\Windows\Microsoft.NET\Framework\v4.0.30319
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages
      C:\Program Files (x86)\HTML Help Workshop
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\Team Tools\Performance Tools
      C:\Program Files (x86)\Windows Kits\10\bin\x86
      C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\
      C:\Perl64\site\bin
      C:\Perl64\bin
      C:\Users\Oliver\AppData\Local\Programs\Python\Python35\
      C:\Users\Oliver\AppData\Local\Programs\Python\Python35\Scripts\
      C:\Program Files\TortoiseSVN\bin
      C:\cygwin64\bin
      C:\cygwin64\usr\local\IMOD\bin
      C:\Program Files\VTK\bin
      C:\oraclexe\app\oracle\product\11.2.0\server\bin
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
      C:\Windows\system32
      C:\Windows
      C:\Windows\System32\Wbem
      C:\Windows\System32\WindowsPowerShell\v1.0\
      C:\Program Files\Git\cmd
      C:\Users\Oliver\.dnx\bin
      C:\Program Files\Microsoft DNX\Dnvm\
      C:\Program Files (x86)\Notepad++
      C:\Program Files (x86)\CMake\bin
      C:\Program Files\doxygen\bin
      C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
      C:\Qt5.6\Tools\QtCreator\bin
      C:\Users\Oliver\Documents\bin
      C:\Perl64\site\bin
      C:\Perl64\bin
      C:\Users\Oliver\AppData\Local\Programs\Python\Python35\
      C:\Users\Oliver\AppData\Local\Programs\Python\Python35\Scripts\
      C:\Program Files\TortoiseSVN\bin
      C:\cygwin64\bin
      C:\cygwin64\usr\local\IMOD\bin
      C:\Program Files\VTK\bin
      C:\oraclexe\app\oracle\product\11.2.0\server\bin
      C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
      C:\Windows\system32
      C:\Windows
      C:\Windows\System32\Wbem
      C:\Windows\System32\WindowsPowerShell\v1.0\
      C:\Program Files\Git\cmd
      C:\Users\Oliver\.dnx\bin
      C:\Program Files\Microsoft DNX\Dnvm\
      C:\Program Files (x86)\Notepad++
      C:\Program Files (x86)\CMake\bin
      C:\Program Files\doxygen\bin
      C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
      C:\Qt5.6\Tools\QtCreator\bin
    

    Configuration:
    pcre
    debug
    compile_examples
    Qt Configuration:
    minimal-config
    small-config
    medium-config
    large-config
    full-config
    debug_and_release build_all release
    debug
    shared
    zlib
    png
    freetype
    harfbuzz
    build_all
    accessibility
    opengl
    dbus
    audio-backend
    directwrite
    native-gestures
    qpa
    concurrent

    QMAKESPEC...................win32-msvc2015 (env)
    Architecture................i386, features: sse sse2
    Host Architecture...........i386, features: sse sse2
    Maketool....................nmake
    Debug build.................yes (combined)
    Default build...............debug
    Force debug info............no
    Force optimized tools.......no
    C++ language standard.......auto
    Link Time Code Generation...no
    Accessibility support.......yes
    RTTI support................yes
    SSE2 support................yes
    SSE3 support................yes
    SSSE3 support...............yes
    SSE4.1 support..............yes
    SSE4.2 support..............yes
    AVX support.................yes
    AVX2 support................yes
    NEON support................no
    OpenGL support..............yes
    Large File support..........yes
    NIS support.................no
    Iconv support...............no
    Evdev support...............no
    Mtdev support...............no
    Inotify support.............no
    eventfd(7) support..........no
    Glib support................no
    CUPS support................no
    OpenVG support..............no
    SSL support.................no
    OpenSSL support.............no
    libproxy support............no
    Qt D-Bus support............runtime
    Qt Widgets module support...yes
    Qt GUI module support.......yes
    QML debugging...............yes
    DirectWrite support.........yes
    Use system proxies..........no

    QPA Backends:
    GDI.....................yes
    Direct2D................no

    Third Party Libraries:
    ZLIB support............qt
    GIF support.............plugin
    JPEG support............plugin
    PNG support.............yes
    FreeType support........yes
    Fontconfig support......no
    HarfBuzz support........qt
    PCRE support............qt
    ICU support.............no
    ANGLE...................no
    Dynamic OpenGL..........no

    Styles:
    Windows.................yes
    Windows XP..............yes
    Windows Vista...........yes
    Fusion..................yes
    Windows CE..............no
    Windows Mobile..........no

    Sql Drivers:
    ODBC....................no
    MySQL...................no
    OCI.....................no
    PostgreSQL..............no
    TDS.....................no
    DB2.....................no
    SQLite..................plugin (qt)
    SQLite2.................no
    InterBase...............no

    Sources are in..............d:\qt5\qtbase
    Build is done in............D:\qt-build\qtbase
    Install prefix..............d:\qt-raw
    Headers installed to........d:\qt-raw\include
    Libraries installed to......d:\qt-raw\lib
    Arch-dep. data to...........d:\qt-raw
    Plugins installed to........d:\qt-raw\plugins
    Library execs installed to..d:\qt-raw\bin
    QML1 imports installed to...d:\qt-raw\imports
    QML2 imports installed to...d:\qt-raw\qml
    Binaries installed to.......d:\qt-raw\bin
    Arch-indep. data to.........d:\qt-raw
    Docs installed to...........d:\qt-raw\doc
    Translations installed to...d:\qt-raw\translations
    Examples installed to.......d:\qt-raw\examples
    Tests installed to..........d:\qt-raw\tests

    Info: creating super cache file D:\qt-build.qmake.super

    Qt is now configured for building. Just run nmake.
    To reconfigure, run nmake confclean and configure.

    jom 2> error.txt

    jom 1.1.0 - empower your cores

    jom: D:\qt-build\qtbase\src\corelib\Makefile.Debug [.obj\debug\qtimer.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile.Debug [.obj\debug\qstatemachine.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile.Release [.obj\release\qtimer.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile.Release [.obj\release\qstatemachine.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile [debug-all] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile [release-all] Error 2
    jom: D:\qt-build\qtbase\src\Makefile [sub-corelib-make_first] Error 2
    jom: D:\qt-build\qtbase\Makefile [sub-src-make_first] Error 2
    jom: D:\qt-build\Makefile [module-qtbase-make_first] Error 2

    doing the same using nmake 2> error.txt I get

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

    jom 1.1.0 - empower your cores

    jom: D:\qt-build\qtbase\src\corelib\Makefile.Debug [.obj\debug\qtimer.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile.Release [.obj\release\qtimer.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile.Debug [.obj\debug\qstatemachine.obj] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile [debug-all] Error 2
    jom: D:\qt-build\qtbase\src\corelib\Makefile [release-all] Error 2
    jom: D:\qt-build\qtbase\src\Makefile [sub-corelib-make_first] Error 2
    jom: D:\qt-build\qtbase\Makefile [sub-src-make_first] Error 2
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.

    I've tried the same against the tar download and I get the same issues. Also I've tried amd64 and x86 build and it ends the same.

    Cheers
    Ollie


  • Moderators

    You should check the whole jom output not only standard error. Lines like this do not tell anything:

    jom: D:\qt-build\qtbase\Makefile [sub-src-make_first] Error 2
    


  • @jsulm I need to build it to enable the -opengl desktop option. Windows build used ANGLE which is no good to me.


  • Moderators

    @Ollie said:

    Also, I can't to a -opengl desktop build for winrt.

    Microsoft does not support OpenGL in WinRT so using ANGLE (which translates OpenGL to DirectX calls) is the only option for that platform.



  • @jsulm Yes indeed. I've piped everything to a file and it looks like it's having problems with qtimer.cpp.

    cl -c -FIqt_pch.h -Yuqt_pch.h -Fp.pch\release\Qt5Core_pch.pch -nologo -Zc:wchar_t -FS -Zc:strictStrings -Zc:throwingNew -O2 -MD -EHsc -GR -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -DUNICODE -DWIN32 -DQT_NO_USING_NAMESPACE -DPCRE_STATIC -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_DEBUG -DNDEBUG -ID:\qt5\qtbase\src\corelib -I. -ID:\qt5\qtbase\src\3rdparty\zlib -Iglobal -ID:\qt5\qtbase\src\3rdparty\pcre -ID:\qt5\qtbase\src\3rdparty\harfbuzz\src -ID:\qt5\qtbase\src\3rdparty\md5 -ID:\qt5\qtbase\src\3rdparty\md4 -ID:\qt5\qtbase\src\3rdparty\sha3 -I....\include -I....\include\QtCore -I....\include\QtCore\5.6.1 -I....\include\QtCore\5.6.1\QtCore -Itmp -I.moc\release -ID:\qt5\qtbase\mkspecs\win32-msvc2015 -Fo.obj\release\ @C:\Users\Oliver\AppData\Local\Temp\qtimer.obj.5372.29468.jom

    qtimer.cpp

    D:\qt5\qtbase\src\corelib\kernel\qtimer.cpp(590): fatal error C1083: Cannot open include file: 'qtimer.moc': No such file or


  • Moderators

    Looks like moc was not executed before, but I don't know why.



  • @Chris-Kawa OK thanks for that. I'm really aiming for a win32 (64bit) build. But my 32bit build is not working either. Looks like it's failing linking qtimer
    can't find qtimer.moc



  • @jsulm I've had a look in the src\corelib.moc\debug (and release) folders and there's a qtimer.moc and qstatemachine.moc file in the directory. Every other file is moc_qtimer.cpp, etc...

    I assume that's standard.



  • Solved it by compiling on a clean machine. I had a few versions of Qt already installed and other applications in my path that may have caused issues. Also did a new get checkout of the repo.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.