Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Build Qt5.11.2 x86 libraries with VS 2017



  • Hello,
    The build of Qt5.11.2 stop with this error:

            "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\nmake.exe" -f Makefile.core_module.Debug
    
    Microsoft (R) Program Maintenance Utility Version 14.15.26730.0
    Copyright (C) Microsoft Corporation. Tous droits réservés.
    
            rc /NOLOGO -D_DEBUG -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_WEBENGINECORE_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_EXCEPTIONS -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_WEBCHANNEL_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB -DQT_QUICK_LIB -DQT_WEBENGINECOREHEADERS_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -D_WINDLL -fo .obj\debug\Qt5WebEngineCored_resource.res Qt5WebEngineCored_resource.rc
            link /NOLOGO /DYNAMICBASE /NXCOMPAT @D:/code/qt/5.11.2/5.11.2/Src/qtwebengine/src/core/debug/Qt5WebEngineCored.rsp /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /DLL /SUBSYSTEM:WINDOWS /WX /MACHINE:X86 /SAFESEH /largeaddressaware /fastfail /FIXED:NO /ignore:4199 /ignore:4221 /NXCOMPAT /DYNAMICBASE:NO /time /verbose:incr /INCREMENTAL:NO /SUBSYSTEM:CONSOLE,5.01 /DELAYLOAD:cfgmgr32.dll /DELAYLOAD:powrprof.dll /DELAYLOAD:setupapi.dll /NATVIS:D:/code/qt/5.11.2/5.11.2/Src/qtwebengine/src/3rdparty/chromium/tools/win/DebugVisualizers/chrome.natvis /DELAYLOAD:mf.dll /DELAYLOAD:mfplat.dll /DELAYLOAD:mfreadwrite.dll /DELAYLOAD:BluetoothApis.dll /DELAYLOAD:Bthprops.cpl /DELAYLOAD:setupapi.dll /NATVIS:D:/code/qt/5.11.2/5.11.2/Src/qtwebengine/src/3rdparty/chromium/tools/win/DebugVisualizers/webkit.natvis /OPT:REF @D:/code/qt/5.11.2/5.11.2/Src/qtwebengine/src/core/api/debug\qtwebenginecoreapid.lib.objects /DEBUG /DLL /SUBSYSTEM:WINDOWS /VERSION:5.11 /MANIFEST:embed /OUT:..\..\lib\Qt5WebEngineCored.dll @C:\Users\cfdev\AppData\Local\Temp\nm7A63.tmp
       Création de la bibliothèque ..\..\lib\Qt5WebEngineCored.lib et de l'objet ..\..\lib\Qt5WebEngineCored.exp
    LibDef: Total time = 0.141s
      OptRef: Total time = 0.500s
      OptIcf: Total time = 1493.390s
    Pass 1: Interval #1, time = 1680.375s
    LINK : l'éditeur de liens 32 bits (C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\link.EXE) n'a pas pu effectuer d'E/S de fichier mappé en mémoire sur 'D:\code\qt\5.11.2\5.11.2\Src\qtwebengine\src\core\debug\obj\net\net.lib' et va redémarrer l'édition des liens avec un éditeur de liens 64 bits pour un meilleur débit
    LINK : échec de la localisation d'un éditeur de liens 64 bits sur %PATH% ; poursuite de l'édition des liens ; passez à un éditeur de liens 64 bits
    LINK : fatal error LNK1102: mémoire insuffisante
      Wait PDB close: Total time = 0.063s
    Final: Total time = 1795.094s
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\link.EXE"' : code retour '0x44e'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\nmake.exe"' : code retour '0x2'
    Stop.
    NMAKE : fatal error U1077: '(' : code retour '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : code retour '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : code retour '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : code retour '0x2'
    Stop.
    

    My configure is simple :

    configure -debug -prefix D:\code\qt\5.11.2\5.11.2\bin -nomake examples -nomake tests -skip qtconnectivity -no-feature-accessibility -opensource
    

    Linker have not enough memory ... strange ?



  • This post is deleted!

  • Lifetime Qt Champion

    Hi,

    QtWebEngine is a pretty big module to build.

    Any reason not to use the pre-built 32bit Qt VS 2015 version ? VS2017 is backward compatible with VS2015.



  • For the pre-build VS2015 version, my software does'nt compile VC2017 + Qt pre build Lib VC2015... And on my win10 I can't anymore install MVC2015 only MVC2017 :(

    I compiled successfull by closing all applications what I could... :D
    3Go RAM free are necessary... But

    I use QSslsocket, I see by default configure enable "-openssl-linked". How to specify the path ?
    In Global VAR OPENSSL_LIBS ?? with D:\code\tools\OpenSSL-Win32\lib or D:\code\tools\OpenSSL-Win32\lib\VC ?

    Thanks @SGaist


  • Lifetime Qt Champion

    AFAIK, it's -openssl-runtime that is the default. IIRC, you can also use the -I and -L options. Note that these requires a space unlike the same options passed to the compiler/linker.



  • @cfdev said in Build Qt5.11.2 x86 libraries with VS 2017:

    3Go RAM free are necessary... But

    @SGaist thanks it's solved!, but expect 4Go RAM free instead !!



  • Hello,

    I have the same issue for build Qt 5.14.2 with VS 2017 on a workstation with 16GB of RAM. I suspect that the build is using 32 bits version of VS compiler and linker which cannot handle more than 4 GB of RAM even if the environment has more.

    Does anyone knows how I could check my assumption and more interestingly force the use of x64 architecture for compiler and linker. I tried to set PreferredToolArchitecture=x64 but it does not seem to be enough.


Log in to reply