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

Can't compile Qt for Webassembly

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Out of scope
    • Not Evaluated
    • None
    • 5.14.0 Beta3
    • Core: Other
    • None

    Description

      I can't compile Qt for Webassembly using emscripten 1.38.30 for the threaded version anymore:

      vadi@gooseberry:/media/vadi/SSDer/Programs/Qt/5.14.0/Src$ ./configure -xplatform wasm-emscripten -nomake examples -prefix $PWD/qtbase -feature-thread
      + cd qtbase
      + /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/configure -top-level -xplatform wasm-emscripten -nomake examples -prefix /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase -feature-thread
      Creating qmake...
      .............................................................................................Done.
      Info: creating super cache file /media/vadi/SSDer/Programs/Qt/5.14.0/Src/.qmake.super
      Info: creating cache file /media/vadi/SSDer/Programs/Qt/5.14.0/Src/.qmake.cache
      Info: creating stash file /media/vadi/SSDer/Programs/Qt/5.14.0/Src/.qmake.stashSelecting Qt Edition.Type 'c' if you want to use the Commercial Edition.
      Type 'o' if you want to use the Open Source Edition.Which edition of Qt do you want to use? oThis is the Qt Open Source Edition.
       
      You are licensed to use this software under the terms of
      the GNU General Public License (GPL) version 3.
       
      Type 'G' to view the GNU General Public License version 3 (GPLv3).
      Type 'y' to accept this license offer.
      Type 'n' to decline this license offer.
       
      Do you accept the terms of the license? y
      Running configuration tests...
      Checking for valid makespec... Note: Also available for Linux: linux-clang linux-iccERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.Check config.log for details.
      vadi@gooseberry:/media/vadi/SSDer/Programs/Qt/5.14.0/Src$ cat config
      config.cache    config.log      config.tests/   configure       configure.bat   configure.json  
      vadi@gooseberry:/media/vadi/SSDer/Programs/Qt/5.14.0/Src$ cat config.log
      Command line: -xplatform wasm-emscripten -nomake examples -prefix /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase -feature-thread
      executing config test verifyspec
      + cd /media/vadi/SSDer/Programs/Qt/5.14.0/Src/config.tests/verifyspec && /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += static warn_off console single_arch" -early "CONFIG += cross_compile" /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/config.tests/verifyspec
      + cd /media/vadi/SSDer/Programs/Qt/5.14.0/Src/config.tests/verifyspec && MAKEFLAGS= /usr/bin/make
      > em++ -c -pipe -O3 -std=gnu++11 -w  -I/media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/config.tests/verifyspec -I. -I/home/vadi/.emscripten_ports/openssl/include -I/media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/mkspecs/wasm-emscripten -o verifyspec.o /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/config.tests/verifyspec/verifyspec.cpp
      > sed -e s/@APPNAME@/verifyspec/g /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/mkspecs/features/wasm/../../../src/plugins/platforms/wasm/wasm_shell.html > /media/vadi/SSDer/Programs/Qt/5.14.0/Src/config.tests/verifyspec/verifyspec.html
      > cp -f /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/mkspecs/features/wasm/../../../src/plugins/platforms/wasm/qtloader.js /media/vadi/SSDer/Programs/Qt/5.14.0/Src/config.tests/verifyspec
      > cp -f /media/vadi/SSDer/Programs/Qt/5.14.0/Src/qtbase/mkspecs/features/wasm/../../../src/plugins/platforms/wasm/qtlogo.svg /media/vadi/SSDer/Programs/Qt/5.14.0/Src/config.tests/verifyspec
      > em++ -s WASM=1 -s FULL_ES2=1 -s USE_WEBGL2=1 -s NO_EXIT_RUNTIME=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 --bind -O3 -o ./verifyspec.js verifyspec.o      
      > cache:INFO: generating system library: libc.bc... (this will be cached in "/home/vadi/.emscripten_cache/asmjs/libc.bc" for subsequent builds)
      > cache:INFO:  - ok
      > cache:INFO: generating system library: libcompiler_rt.bc... (this will be cached in "/home/vadi/.emscripten_cache/asmjs/libcompiler_rt.bc" for subsequent builds)
      > cache:INFO:  - ok
      > cache:INFO: generating system library: libc-wasm.bc... (this will be cached in "/home/vadi/.emscripten_cache/asmjs/libc-wasm.bc" for subsequent builds)
      > cache:INFO:  - ok
      > cache:INFO: generating system library: libembind-rtti.bc... (this will be cached in "/home/vadi/.emscripten_cache/asmjs/libembind-rtti.bc" for subsequent builds)
      > cache:INFO:  - ok
      > cache:INFO: generating system library: libc++abi-noexcept.bc... (this will be cached in "/home/vadi/.emscripten_cache/asmjs/libc++abi-noexcept.bc" for subsequent builds)
      > In file included from /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_default_handlers.cpp:19:
      > /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_exception.hpp:19:10: fatal error: 'unwind.h' file not found
      > #include "unwind.h"
      >          ^~~~~~~~~~
      > 1 error generated.
      > shared:ERROR: '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/clang++ -target asmjs-unknown-emscripten -D__EMSCRIPTEN_major__=1 -D__EMSCRIPTEN_minor__=39 -D__EMSCRIPTEN_tiny__=2 -D_LIBCPP_ABI_VERSION=2 -Werror=implicit-function-declaration -Xclang -nostdsysteminc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/local/include -c -Werror -std=c++11 -Oz -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -fno-exceptions -DNDEBUG -D_LIBCXXABI_HAS_NO_THREADS -D_LIBCXXABI_NO_EXCEPTIONS -DEMSCRIPTEN -mllvm -disable-llvm-optzns /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_default_handlers.cpp -fno-inline-functions -Xclang -disable-O0-optnone -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/SDL -c -o /tmp/emscripten_temp_o9uCTf/cxa_default_handlers.cpp.o -emit-llvm' failed (1)
      > In file included from /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_exception_storage.cpp:14:
      > /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_exception.hpp:19:10: fatal error: 'unwind.h' file not found
      > #include "unwind.h"
      >          ^~~~~~~~~~
      > 1 error generated.
      > shared:ERROR: '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/clang++ -target asmjs-unknown-emscripten -D__EMSCRIPTEN_major__=1 -D__EMSCRIPTEN_minor__=39 -D__EMSCRIPTEN_tiny__=2 -D_LIBCPP_ABI_VERSION=2 -Werror=implicit-function-declaration -Xclang -nostdsysteminc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/local/include -c -Werror -std=c++11 -Oz -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -fno-exceptions -DNDEBUG -D_LIBCXXABI_HAS_NO_THREADS -D_LIBCXXABI_NO_EXCEPTIONS -DEMSCRIPTEN -mllvm -disable-llvm-optzns /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_exception_storage.cpp -fno-inline-functions -Xclang -disable-O0-optnone -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/SDL -c -o /tmp/emscripten_temp_o9uCTf/cxa_exception_storage.cpp.o -emit-llvm' failed (1)
      > Traceback (most recent call last):
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/emcc.py", line 3681, in <module>
      >     sys.exit(run(sys.argv))
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/emcc.py", line 2074, in run
      >     extra_files_to_link += system_libs.calculate([f for _, f in sorted(temp_files)] + extra_files_to_link, in_temp, stdout_=None, stderr_=None, forced=forced_stdlibs)
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 1424, in calculate
      >     add_library(lib)
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 1384, in add_library
      >     add_library(system_libs_map[d])
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 1380, in add_library
      >     libs_to_link.append((lib.get_path(), need_whole_archive))
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 310, in get_path
      >     return shared.Cache.get(self.get_filename(), self.build)
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/cache.py", line 133, in get
      >     temp = creator()
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 350, in build
      >     create_lib(out_filename, self.build_objects())
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 344, in build_objects
      >     run_commands(commands)
      >   File "/home/vadi/Programs/emsdk/upstream/emscripten/tools/system_libs.py", line 69, in run_commands
      >     pool.map_async(run_build_command, commands, chunksize=1).get(999999)
      >   File "/usr/lib/python2.7/multiprocessing/pool.py", line 572, in get
      >     raise self._value
      > tools.shared.Py2CalledProcessError: Command '['/usr/bin/python', '/home/vadi/Programs/emsdk/upstream/emscripten/em++.py', '-s', 'WASM_OBJECT_FILES=0', '-c', '/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_default_handlers.cpp', '-o', '/tmp/emscripten_temp_o9uCTf/cxa_default_handlers.cpp.o', '-Werror', '-std=c++11', '-Oz', '-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS', '-s', 'WASM_OBJECT_FILES=0', '-fno-exceptions', '-DNDEBUG', '-D_LIBCXXABI_HAS_NO_THREADS', '-D_LIBCXXABI_NO_EXCEPTIONS']' returned non-zero exit status 1
      > In file included from /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_handlers.cpp:19:
      > /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_exception.hpp:19:10: fatal error: 'unwind.h' file not found
      > #include "unwind.h"
      >          ^~~~~~~~~~
      > make: *** [Makefile:69: verifyspec.js] Error 1
      > error: unable to rename temporary '/tmp/emscripten_temp_o9uCTf/cxa_demangle.cpp-10fe72fc.o.tmp' to output file '/tmp/emscripten_temp_o9uCTf/cxa_demangle.cpp.o': 'No such file or directory'
      > 1 error generated.
      > shared:ERROR: '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/clang++ -target asmjs-unknown-emscripten -D__EMSCRIPTEN_major__=1 -D__EMSCRIPTEN_minor__=39 -D__EMSCRIPTEN_tiny__=2 -D_LIBCPP_ABI_VERSION=2 -Werror=implicit-function-declaration -Xclang -nostdsysteminc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/local/include -c -Werror -std=c++11 -Oz -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -fno-exceptions -DNDEBUG -D_LIBCXXABI_HAS_NO_THREADS -D_LIBCXXABI_NO_EXCEPTIONS -DEMSCRIPTEN -mllvm -disable-llvm-optzns /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_demangle.cpp -fno-inline-functions -Xclang -disable-O0-optnone -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/SDL -c -o /tmp/emscripten_temp_o9uCTf/cxa_demangle.cpp.o -emit-llvm' failed (1)
      > 1 error generated.
      > shared:ERROR: '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/clang++ -target asmjs-unknown-emscripten -D__EMSCRIPTEN_major__=1 -D__EMSCRIPTEN_minor__=39 -D__EMSCRIPTEN_tiny__=2 -D_LIBCPP_ABI_VERSION=2 -Werror=implicit-function-declaration -Xclang -nostdsysteminc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/local/include -c -Werror -std=c++11 -Oz -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -fno-exceptions -DNDEBUG -D_LIBCXXABI_HAS_NO_THREADS -D_LIBCXXABI_NO_EXCEPTIONS -DEMSCRIPTEN -mllvm -disable-llvm-optzns /home/vadi/Programs/emsdk/upstream/emscripten/system/lib/libcxxabi/src/cxa_handlers.cpp -fno-inline-functions -Xclang -disable-O0-optnone -Xclang -isystem/home/vadi/Programs/emsdk/upstream/emscripten/system/include/SDL -c -o /tmp/emscripten_temp_o9uCTf/cxa_handlers.cpp.o -emit-llvm' failed (1)
      

      And my ~/.emscripten:

      $ cat ~/.emscripten
      LLVM_ROOT = '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit'
      EMSCRIPTEN_NATIVE_OPTIMIZER = '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/optimizer'
      BINARYEN_ROOT = '/home/vadi/Programs/emsdk/clang/e1.38.30_64bit/binaryen'
      NODE_JS = '/home/vadi/Programs/emsdk/node/8.9.1_64bit/bin/node'
      EMSCRIPTEN_ROOT = '/home/vadi/Programs/emsdk/emscripten/1.38.30'
      TEMP_DIR = '/tmp'
      COMPILER_ENGINE = NODE_JS
      JS_ENGINES = [NODE_JS]
      

      Attachments

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

        Activity

          People

            lpotter Lorn Potter
            vadi Vadim Peretokin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes