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

Building for WebAssembly fails for Windows

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Not Evaluated
    • Resolution: Invalid
    • Affects Version/s: 5.15.2
    • Fix Version/s: None
    • Component/s: Build tools: Other
    • Labels:
      None
    • Environment:
      Windows x64, Emscripten v1.39.8 MinGW from installer : http://win-builds.org/doku.php
    • Platform/s:
      Windows
    • Commits:
      Wrong mingw version

      Description

      Following the steps here:  https://doc.qt.io/qt-5/wasm.html

       

      command line:

      configure -no-warnings-are-errors -xplatform wasm-emscripten -platform win32-g++ -nomake examples -prefix %CD%\qtbase

      Fails with many compile errors in the make step:

      make module-qtbase module-qtdeclarative

       

      VERSION_MINOR=15 -DQT_VERSION_PATCH=2 -DQT_BOOTSTRAPPED -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_BOOTSTRAP_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_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -I. -I../../3rdparty/zlib/src -I../../tools -I../../3rdparty/tinycbor/src -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.15.2 -I../../../include/QtCore/5.15.2/QtCore -I../../../include/QtXml -I../../../include/QtXml/5.15.2 -I../../../include/QtXml/5.15.2/QtXml -Itmp -I../../../mkspecs/win32-g++ -o .obj/release/qlatincodec.o ../../corelib/codecs/qlatincodec.cpp
              g++ -c -fno-keep-inline-dllexport -O2 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -Wall -Wextra -Wextra -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_VERSION_STR='"5.15.2"' -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=2 -DQT_BOOTSTRAPPED -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_BOOTSTRAP_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_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -I. -I../../3rdparty/zlib/src -I../../tools -I../../3rdparty/tinycbor/src -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.15.2 -I../../../include/QtCore/5.15.2/QtCore -I../../../include/QtXml -I../../../include/QtXml/5.15.2 -I../../../include/QtXml/5.15.2/QtXml -Itmp -I../../../mkspecs/win32-g++ -o .obj/release/qtextcodec.o ../../corelib/codecs/qtextcodec.cpp
              g++ -c -fno-keep-inline-dllexport -O2 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -Wall -Wextra -Wextra -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_VERSION_STR='"5.15.2"' -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=2 -DQT_BOOTSTRAPPED -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_BOOTSTRAP_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_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -I. -I../../3rdparty/zlib/src -I../../tools -I../../3rdparty/tinycbor/src -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.15.2 -I../../../include/QtCore/5.15.2/QtCore -I../../../include/QtXml -I../../../include/QtXml/5.15.2 -I../../../include/QtXml/5.15.2/QtXml -Itmp -I../../../mkspecs/win32-g++ -o .obj/release/qutfcodec.o ../../corelib/codecs/qutfcodec.cpp
              g++ -c -fno-keep-inline-dllexport -O2 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -Wall -Wextra -Wextra -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_VERSION_STR='"5.15.2"' -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=2 -DQT_BOOTSTRAPPED -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_BOOTSTRAP_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_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -I. -I../../3rdparty/zlib/src -I../../tools -I../../3rdparty/tinycbor/src -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.15.2 -I../../../include/QtCore/5.15.2/QtCore -I../../../include/QtXml -I../../../include/QtXml/5.15.2 -I../../../include/QtXml/5.15.2/QtXml -Itmp -I../../../mkspecs/win32-g++ -o .obj/release/qendian.o ../../corelib/global/qendian.cpp
              g++ -c -fno-keep-inline-dllexport -O2 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -Wall -Wextra -Wextra -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_VERSION_STR='"5.15.2"' -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=2 -DQT_BOOTSTRAPPED -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_CAST_FROM_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_BOOTSTRAP_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_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -I. -I../../3rdparty/zlib/src -I../../tools -I../../3rdparty/tinycbor/src -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.15.2 -I../../../include/QtCore/5.15.2/QtCore -I../../../include/QtXml -I../../../include/QtXml/5.15.2 -I../../../include/QtXml/5.15.2/QtXml -Itmp -I../../../mkspecs/win32-g++ -o .obj/release/qglobal.o ../../corelib/global/qglobal.cpp
      ../../corelib/global/qglobal.cpp:1177:12: warning: character constant too long for its type [enabled by default]
           return QT_VERSION_STR;
                  ^
      ../../corelib/global/qglobal.cpp: In function 'const char* qVersion()':
      <command-line>:0:16: error: invalid conversion from 'int' to 'const char*' [-fpermissive]
      ../../corelib/global/qglobal.cpp:1177:12: note: in expansion of macro 'QT_VERSION_STR'
           return QT_VERSION_STR;
                  ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h: In instantiation of 'QtMetaTypePrivate::QSequentialIterableImpl::QSequentialIterableImpl(const T*) [with T = QList<QVariant>]':
      ../../../include/QtCore/../../src/corelib/kernel/qvariant.h:772:139:   required from here
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1160:135: error: ambiguous class template instantiation for 'struct QtMetaTypePrivate::ContainerCapabilitiesImpl<QList<QVariant>, void>'
             , _iteratorCapabilities(ContainerAPI<T>::IteratorCapabilities | (1 << 4) | (ContainerCapabilitiesImpl<T>::ContainerCapabilities << (4+3)))
                                                                                                                                             ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1007:8: error: candidates are: struct QtMetaTypePrivate::ContainerCapabilitiesImpl<Container, decltype (declval<Container>().push_back(declval<typename Container::value_type>()))> struct ContainerCapabilitiesImpl<Container, decltype(std::declval<Container>().push_back(std::declval<typename Container::value_type>()))>
              ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1025:8: error:                 struct QtMetaTypePrivate::ContainerCapabilitiesImpl<Container, void>
       struct ContainerCapabilitiesImpl<Container, QtPrivate::ContainerCapabilitiesMetaProgrammingHelper::void_t<decltype(std::declval<Container>().insert(std::declval<typename Container::value_type>())), decltype(std::declval<typename Container::value_type>() == std::declval<typename Container::value_type>())>>
              ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1160:135: error: incomplete type 'QtMetaTypePrivate::ContainerCapabilitiesImpl<QList<QVariant>, void>' used in nested name specifier
             , _iteratorCapabilities(ContainerAPI<T>::IteratorCapabilities | (1 << 4) | (ContainerCapabilitiesImpl<T>::ContainerCapabilities << (4+3)))
                                                                                                                                             ^
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1169:68: error: incomplete type 'QtMetaTypePrivate::ContainerCapabilitiesImpl<QList<QVariant>, void>' used in nested name specifier
             , _copyIter(IteratorOwner<typename T::const_iterator>::assign)
                                                                          ^
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h: In instantiation of 'QtMetaTypePrivate::QSequentialIterableImpl::QSequentialIterableImpl(const T*) [with T = QStringList]':
      ../../../include/QtCore/../../src/corelib/kernel/qvariant.h:775:138:   required from here
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1160:135: error: ambiguous class template instantiation for 'struct QtMetaTypePrivate::ContainerCapabilitiesImpl<QStringList, void>'
             , _iteratorCapabilities(ContainerAPI<T>::IteratorCapabilities | (1 << 4) | (ContainerCapabilitiesImpl<T>::ContainerCapabilities << (4+3)))
                                                                                                                                             ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1007:8: error: candidates are: struct QtMetaTypePrivate::ContainerCapabilitiesImpl<Container, decltype (declval<Container>().push_back(declval<typename Container::value_type>()))> struct ContainerCapabilitiesImpl<Container, decltype(std::declval<Container>().push_back(std::declval<typename Container::value_type>()))>
              ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1025:8: error:                 struct QtMetaTypePrivate::ContainerCapabilitiesImpl<Container, void>
       struct ContainerCapabilitiesImpl<Container, QtPrivate::ContainerCapabilitiesMetaProgrammingHelper::void_t<decltype(std::declval<Container>().insert(std::declval<typename Container::value_type>())), decltype(std::declval<typename Container::value_type>() == std::declval<typename Container::value_type>())>>
              ^
      In file included from ../../../include/QtCore/qmetatype.h:1:0,
                       from ../../../include/QtCore/../../src/corelib/io/qfileinfo.h:46,
                       from ../../../include/QtCore/qfileinfo.h:1,
                       from ../../../include/QtCore/../../src/corelib/io/qdir.h:44,
                       from ../../../include/QtCore/qdir.h:1,
                       from ../../corelib/global/qglobal.cpp:45:
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1160:135: error: incomplete type 'QtMetaTypePrivate::ContainerCapabilitiesImpl<QStringList, void>' used in nested name specifier
             , _iteratorCapabilities(ContainerAPI<T>::IteratorCapabilities | (1 << 4) | (ContainerCapabilitiesImpl<T>::ContainerCapabilities << (4+3)))
                                                                                                                                             ^
      ../../../include/QtCore/../../src/corelib/kernel/qmetatype.h:1169:68: error: incomplete type 'QtMetaTypePrivate::ContainerCapabilitiesImpl<QStringList, void>' used in nested name specifier
             , _copyIter(IteratorOwner<typename T::const_iterator>::assign)
      
      
      

        Attachments

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

          Activity

            People

            Assignee:
            qtbuildsystem Qt Build System Team
            Reporter:
            doug_rogers Doug Rogers
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes