Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-90606

Fail to build latest qtbase (dev branch) with -schannel option

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P3: Somewhat important
    • Resolution: Done
    • Affects Version/s: 6.1.0
    • Fix Version/s: 6.1.0 Alpha
    • Component/s: Network: SSL
    • Labels:
      None
    • Environment:
      Windows 10; MSVC 2019
    • Platform/s:
      Windows
    • Commits:
      1a2dd9276759742a7eda704341ee618d296ad8bf (qt/tqtc-qtbase/dev)

      Description

      I try to build latest qtbase (dev branch) with -schannel option, but it fails.

      D:\Qt\src\qt6\qtbase\configure -prefix D:\Qt\vs2019_64 -release -schannel
      ......
      cmake --build . --parallel --target src/network/all
      ......
      [542/544] Building CXX object src\network\CMakeFiles\Network.dir\ssl\qsslsocket_schannel.cpp.obj
      FAILED: src/network/CMakeFiles/Network.dir/ssl/qsslsocket_schannel.cpp.obj
      "D:\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\Hostx64\x64\cl.exe"  /nologo /TP -DNetwork_EXPORTS -DQT_ASCII_CAST_WARNINGS -DQT_BUILDING_QT -DQT_BUILD_NETWORK_LIB -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_MOC_COMPAT -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH -DQT_NO_USING_NAMESPACE -DQT_USE_QSTRINGBUILDER -DQT_USE_SYSTEM_PROXIES -DUNICODE -DWIN32 -DWIN64 -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_USE_MATH_DEFINES -D_WIN64 -D_WINDLL -Isrc\network\Network_autogen\include -Iinclude -Iinclude\QtNetwork -ID:\Qt\src\qt6\qtbase\src\network -Isrc\network -ID:\Qt\src\qt6\qtbase\src\network\kernel -Iinclude\QtNetwork\6.1.0 -Iinclude\QtNetwork\6.1.0\QtNetwork -ID:\Qt\src\qt6\qtbase\src\network\..\3rdparty\zlib\src -Iinclude\QtCore -ID:\Qt\src\qt6\qtbase\mkspecs\win32-msvc -Isrc\corelib -Iinclude\QtCore\6.1.0 -Iinclude\QtCore\6.1.0\QtCore /DWIN32 /D_WINDOWS /GR /EHsc /DNDEBUG -O2 -MD /W3 /wd4530 /wd4577 -Zc:__cplusplus -permissive- -utf-8 -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:externConstexpr -Zc:wchar_t -guard:cf -std:c++17 /YuD:/Qt/src/build-dev-vs2019_64-shared/src/network/CMakeFiles/Network.dir/cmake_pch.hxx /FpD:/Qt/src/build-dev-vs2019_64-shared/src/network/CMakeFiles/Network.dir/./cmake_pch.cxx.pch /FID:/Qt/src/build-dev-vs2019_64-shared/src/network/CMakeFiles/Network.dir/cmake_pch.hxx /showIncludes /Fosrc\network\CMakeFiles\Network.dir\ssl\qsslsocket_schannel.cpp.obj /Fdsrc\network\CMakeFiles\Network.dir\ /FS -c D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2146: syntax error: missing ';' before identifier 'Type'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2143: syntax error: missing ';' before '*'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2086: 'int `anonymous-namespace'::`anonymous-namespace'::Q_QGS_factory::Type': redefinition
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): note: see declaration of '`anonymous-namespace'::`anonymous-namespace'::Q_QGS_factory::Type'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2059: syntax error: '{'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2143: syntax error: missing ';' before '{'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2447: '{': missing function header (old-style formal list?)
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2065: 'SchannelBackendFactory': undeclared identifier
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2923: 'QGlobalStatic': 'SchannelBackendFactory' is not a valid template type argument for parameter 'T'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2440: 'specialization': cannot convert from 'QBasicAtomicInt *' to 'QBasicAtomicInt &'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2641: cannot deduce template arguments for 'QGlobalStatic'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2783: 'QGlobalStatic<T,innerFunction,guard> QGlobalStatic(void)': could not deduce template argument for 'T'
      D:\Qt\src\build-dev-vs2019_64-shared\include\QtCore\../../../qt6/qtbase/src/corelib/global/qglobalstatic.h(130): note: see declaration of 'QGlobalStatic'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2783: 'QGlobalStatic<T,innerFunction,guard> QGlobalStatic(void)': could not deduce template argument for 'innerFunction'
      D:\Qt\src\build-dev-vs2019_64-shared\include\QtCore\../../../qt6/qtbase/src/corelib/global/qglobalstatic.h(130): note: see declaration of 'QGlobalStatic'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2783: 'QGlobalStatic<T,innerFunction,guard> QGlobalStatic(void)': could not deduce template argument for 'guard'
      D:\Qt\src\build-dev-vs2019_64-shared\include\QtCore\../../../qt6/qtbase/src/corelib/global/qglobalstatic.h(130): note: see declaration of 'QGlobalStatic'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(226): error C2780: 'QGlobalStatic<T,innerFunction,guard> QGlobalStatic(QGlobalStatic<T,innerFunction,guard>)': expects 1 arguments - 0 provided
      D:\Qt\src\build-dev-vs2019_64-shared\include\QtCore\../../../qt6/qtbase/src/corelib/global/qglobalstatic.h(130): note: see declaration of 'QGlobalStatic'
      D:\Qt\src\qt6\qtbase\src\network\ssl\qsslsocket_schannel.cpp(2220): error C3848: expression having type 'QGlobalStatic' would lose some const-volatile qualifiers in order to call 'T *QGlobalStatic<T,innerFunction,guard>::operator ()(void)'
      [543/544] Building CXX object src\network\CMakeFiles\Network.dir\ssl\qsslsocket_qt.cpp.obj
      ninja: build stopped: subcommand failed.

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            tpochep Timur Pocheptsov
            Reporter:
            lixinwei Li Xinwei
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes