Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile libmariandecoder to wasm #6

Closed
wants to merge 160 commits into from
Closed

Compile libmariandecoder to wasm #6

wants to merge 160 commits into from

Conversation

motin
Copy link

@motin motin commented Oct 14, 2020

Description

This PR adds WASM builds of marian-decoder
It is related to issues: #5

List of changes:

  • ...
  • ...

Added dependencies: Docker

How to test

  1. Install Docker if not already installed
  2. Checkout the compile-wasm branch
  3. See the README

Expected results during draft stage of this PR: The compilation fails on Windows

Checklist

  • I have tested the code manually
  • I have run regression tests
  • I have read and followed CONTRIBUTING.md
  • I have updated CHANGELOG.md

@motin
Copy link
Author

motin commented Oct 15, 2020

Current compilation errors (click to expand)
docker run --rm -v...:/repo -v/Users/motin/.ccache:/.ccache  local/marian-build-wasm bash -c 'mkdir -p /repo/build-wasm-docker && \
cd /repo/build-wasm-docker && \
(emcmake cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DCMAKE_PREFIX_PATH=/root/protobuf-wasm-lib/dist -DProtobuf_SRC_ROOT_FOLDER=/root/protobuf-wasm-lib/protobuf -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a /repo && \
emmake make -j4 || rm CMakeCache.txt)'
Running with debug output on.
-- Project name: marian
   Called from: [1]	/repo/CMakeLists.txt
-- Project version: v1.9.36+70f24891
   Called from: [1]	/repo/CMakeLists.txt
-- Checking support for CPU intrinsics
   Called from: [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE4.1 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX2 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX512 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- SSE2 support found
   Called from: [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:359 (message):
  COMPILE_CUDA=off : Building only CPU version


   Called from: [1]	/repo/CMakeLists.txt
-- Not Found Tcmalloc
   Called from: [2]	/repo/cmake/FindTcmalloc.cmake
                [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:396 (message):
  Cannot find TCMalloc library.  Continuing.


   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src
   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src/3rd_party
   Called from: [1]	/repo/src/CMakeLists.txt
   Entering             /repo/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/SQLiteCpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/zlib
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/faiss
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:25 (message):
  �[33mNot building AVX512BW-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.�[m


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:33 (message):
  �[33mNot building AVX512VNNI-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.�[m


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:39 (message):
  �[33mCompiling with Clang and using -mavx due to
  https://bugs.llvm.org/show_bug.cgi?id=41482.  Support for SSE2/SSSE3
  hardware is likely broken at this point.�[m


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/CMakeLists.txt:57 (message):
  You are compiling SentencePiece binaries with -DUSE_STATIC_LIBS=on.  This
  will cause spm_train to segfault.  No need to worry if you do not intend to
  use that binary.  Marian support for SentencePiece will work fine.


   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- VERSION: 0.1.6
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Found Protobuf: /root/protobuf-wasm-lib/dist/lib/libprotobuf.a (found version "3.6.1") 
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Not Found TCMalloc: TCMALLOC_LIB-NOTFOUND
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
   Returning to         /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src
   Called from: [1]	/repo/src/CMakeLists.txt
   Returning to         /repo
   Called from: [1]	/repo/CMakeLists.txt
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindDoxygen.cmake
                [1]	/repo/CMakeLists.txt
-- Configuring done
-- Generating /repo/build-wasm-docker
   Called from: [1]	/repo/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src
   Called from: [1]	/repo/src/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/yaml-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/SQLiteCpp
   Called from: [1]	/repo/src/3rd_party/SQLiteCpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/pathie-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/zlib
   Called from: [1]	/repo/src/3rd_party/zlib/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/faiss
   Called from: [1]	/repo/src/3rd_party/faiss/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Generating done
-- Build files have been written to: /repo/build-wasm-docker
configure: cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DCMAKE_PREFIX_PATH=/root/protobuf-wasm-lib/dist -DProtobuf_SRC_ROOT_FOLDER=/root/protobuf-wasm-lib/protobuf -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a /repo -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"
[  0%] Running cpp protocol buffer compiler on sentencepiece_model.proto
Scanning dependencies of target marian_version
Scanning dependencies of target 3rd_party_installs
[  0%] Built target marian_version
[  0%] Built target 3rd_party_installs
[  1%] Running cpp protocol buffer compiler on sentencepiece.proto
Scanning dependencies of target SQLiteCpp
[  1%] Building CXX object src/3rd_party/SQLiteCpp/CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o
Scanning dependencies of target faiss
[  1%] Building CXX object src/3rd_party/faiss/CMakeFiles/faiss.dir/Index.cpp.o
In file included from /repo/src/3rd_party/SQLiteCpp/src/Backup.cpp:12:
In file included from /repo/src/3rd_party/SQLiteCpp/include/SQLiteCpp/Backup.h:14:
In file included from /repo/src/3rd_party/SQLiteCpp/include/SQLiteCpp/Database.h:13:
In file included from /repo/src/3rd_party/SQLiteCpp/include/SQLiteCpp/Column.h:13:
In file included from /repo/src/3rd_party/SQLiteCpp/include/SQLiteCpp/Statement.h:13:
In file included from /repo/src/3rd_party/SQLiteCpp/include/SQLiteCpp/Exception.h:14:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -DSQLITE_ENABLE_COLUMN_METADATA -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/SQLiteCpp/include -I/repo/src/3rd_party/SQLiteCpp/sqlite3 -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-parentheses-equality -Wno-unused-value -Wno-implicit-int-float-conversion -std=gnu++11 -o CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o -c -pthread -pthread /repo/src/3rd_party/SQLiteCpp/src/Backup.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/SQLiteCpp/CMakeFiles/SQLiteCpp.dir/build.make:84: src/3rd_party/SQLiteCpp/CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:672: src/3rd_party/SQLiteCpp/CMakeFiles/SQLiteCpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[  2%] Building CXX object src/3rd_party/faiss/CMakeFiles/faiss.dir/IndexLSH.cpp.o
In file included from /repo/src/3rd_party/faiss/Index.cpp:10:
In file included from /repo/src/3rd_party/faiss/Index.h:14:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Scanning dependencies of target libyaml-cpp
[  3%] Building CXX object src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o
In file included from /repo/src/3rd_party/faiss/IndexLSH.cpp:10:
In file included from /repo/src/3rd_party/./faiss/IndexLSH.h:15:
In file included from /repo/src/3rd_party/./faiss/Index.h:14:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp:1:
In file included from /repo/src/3rd_party/./yaml-cpp/binary.h:10:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/yaml-cpp/.. -I/repo/src/3rd_party/yaml-cpp/. -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -c -pthread -pthread /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make:84: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:645: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/all] Error 2
[  3%] Building CXX object src/3rd_party/faiss/CMakeFiles/faiss.dir/VectorTransform.cpp.o
Scanning dependencies of target sentencepiece-static
[  4%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o
In file included from /repo/src/3rd_party/faiss/VectorTransform.cpp:10:
In file included from /repo/src/3rd_party/./faiss/VectorTransform.h:20:
In file included from /repo/src/3rd_party/./faiss/Index.h:14:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -DFINTEGER=uint64_t -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/faiss/impl -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/faiss.dir/Index.cpp.o -c -pthread -pthread /repo/src/3rd_party/faiss/Index.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/faiss.dir/Index.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/faiss/CMakeFiles/faiss.dir/build.make:84: src/3rd_party/faiss/CMakeFiles/faiss.dir/Index.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[  4%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -DFINTEGER=uint64_t -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/faiss/impl -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/faiss.dir/IndexLSH.cpp.o -c -pthread -pthread /repo/src/3rd_party/faiss/IndexLSH.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/faiss.dir/IndexLSH.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/faiss/CMakeFiles/faiss.dir/build.make:98: src/3rd_party/faiss/CMakeFiles/faiss.dir/IndexLSH.cpp.o] Error 1
[  5%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o
/repo/src/3rd_party/faiss/VectorTransform.cpp:137:15: error: unknown type name '__m128'
static inline __m128 masked_read(int d, const float *x)
              ^
/repo/src/3rd_party/faiss/VectorTransform.cpp:154:10: error: use of undeclared identifier '_mm_load_ps'
  return _mm_load_ps(buf);
         ^
/repo/src/3rd_party/faiss/VectorTransform.cpp:161:3: error: unknown type name '__m128'
  __m128 mx;
  ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -DFINTEGER=uint64_t -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/faiss/impl -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/faiss.dir/VectorTransform.cpp.o -c -pthread -pthread /repo/src/3rd_party/faiss/VectorTransform.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/faiss.dir/VectorTransform.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/faiss/CMakeFiles/faiss.dir/build.make:112: src/3rd_party/faiss/CMakeFiles/faiss.dir/VectorTransform.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:753: src/3rd_party/faiss/CMakeFiles/faiss.dir/all] Error 2
[  5%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/./faiss -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -Wno-tautological-compare -Wno-unused -Wno-range-loop-construct -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:100: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:20:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:20:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/./faiss -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -Wno-tautological-compare -Wno-unused -Wno-range-loop-construct -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:114: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o] Error 1
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:26:
/repo/src/3rd_party/sentencepiece/src/normalizer.h:27:10: fatal error: 'third_party/absl/strings/string_view.h' file not found
#include "third_party/absl/strings/string_view.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:26:
/repo/src/3rd_party/sentencepiece/src/normalizer.h:27:10: fatal error: 'third_party/absl/strings/string_view.h' file not found
#include "third_party/absl/strings/string_view.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/./faiss -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -Wno-tautological-compare -Wno-unused -Wno-range-loop-construct -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/bpe_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:128: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o] Error 1
17 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=6 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/./faiss -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -Wno-tautological-compare -Wno-unused -Wno-range-loop-construct -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/char_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:142: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:944: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/all] Error 2
make: *** [Makefile:172: all] Error 2
make: make -j4

@motin motin changed the title Add makefile and command for attempting marian-decoder wasm compilation Compile marian-decoder to wasm Oct 20, 2020
@motin
Copy link
Author

motin commented Nov 12, 2020

Current compilation errors (click to expand)
docker run --rm -v***:/repo -v/Users/motin/.ccache:/.ccache  local/marian-build-wasm bash -c 'mkdir -p /repo/build-wasm-docker && \
cd /repo/build-wasm-docker && \
(emcmake cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DUSE_DOXYGEN=off -DUSE_FBGEMM=off -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. && \
(emmake make -j4) || \
rm CMakeCache.txt)'
Running with debug output on.
fatal: not a git repository: /repo/../../.git/modules/3rd_party/marian-dev
-- Project name: marian
   Called from: [1]	/repo/CMakeLists.txt
-- Project version: v1.9.36+
   Called from: [1]	/repo/CMakeLists.txt
fatal: not a git repository: /repo/../../.git/modules/3rd_party/marian-dev
-- Checking support for CPU intrinsics
   Called from: [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE4.1 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX2 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX512 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- SSE2 support found
   Called from: [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:359 (message):
  COMPILE_CUDA=off : Building only CPU version


   Called from: [1]	/repo/CMakeLists.txt
-- Not Found Tcmalloc
   Called from: [2]	/repo/cmake/FindTcmalloc.cmake
                [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:396 (message):
  Cannot find TCMalloc library.  Continuing.


   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src
   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src/3rd_party
   Called from: [1]	/repo/src/CMakeLists.txt
   Entering             /repo/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:25 (message):
  Not building AVX512BW-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:33 (message):
  Not building AVX512VNNI-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:39 (message):
  Compiling with Clang and using -mavx due to
  https://bugs.llvm.org/show_bug.cgi?id=41482.  Support for SSE2/SSSE3
  hardware is likely broken at this point.


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/CMakeLists.txt:61 (message):
  You are compiling SentencePiece binaries with -DUSE_STATIC_LIBS=on.  This
  will cause spm_train to segfault.  No need to worry if you do not intend to
  use that binary.  Marian support for SentencePiece will work fine.


   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- VERSION: 0.1.6
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Found Protobuf: /root/protobuf-wasm-lib/dist/lib/libprotobuf.a (found version "3.6.1")
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Not Found TCMalloc: TCMALLOC_LIB-NOTFOUND
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
   Returning to         /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src
   Called from: [1]	/repo/src/CMakeLists.txt
   Returning to         /repo
   Called from: [1]	/repo/CMakeLists.txt
-- Configuring done
-- Generating /repo/build-wasm-docker
   Called from: [1]	/repo/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src
   Called from: [1]	/repo/src/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/yaml-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/pathie-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Generating done
-- Build files have been written to: /repo/build-wasm-docker
configure: cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DUSE_DOXYGEN=off -DUSE_FBGEMM=off -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"
make[2]: *** No rule to make target '/.git/modules/3rd_party/marian-dev/logs/HEAD', needed by '../src/common/git_revision.h'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:265: src/CMakeFiles/marian_version.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[  0%] Built target 3rd_party_installs
[  4%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o
[  4%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o
[  4%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o
[  5%] Building CXX object src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:417:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstddef:37:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:639:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/initializer_list:46:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstddef:37:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:639:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/initializer_list:46:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstddef:37:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:417:
/emsdk/upstream/emscripten/system/include/libcxx/cstddef:50:9: error: no member named 'size_t' in the global namespace
using ::size_t;
      ~~^
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:418:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:795:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS is_array<_Tp[_Np]>
                     ^
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:639:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/initializer_list:46:
/emsdk/upstream/emscripten/system/include/libcxx/cstddef:50:9: error: no member named 'size_t' in the global namespace
using ::size_t;
      ~~^
In file included from In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:74:
In file included from :
/emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_viewIn file included from :/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h175::
In file included from 7/emsdk/upstream/emscripten/system/include/libcxx/__string:
:In file included from 57/emsdk/upstream/emscripten/system/include/libcxx/string:
:In file included from 504/emsdk/upstream/emscripten/system/include/libcxx/algorithm:
:In file included from 639/emsdk/upstream/emscripten/system/include/libcxx/string_view:
:In file included from 175/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:
:In file included from 46/emsdk/upstream/emscripten/system/include/libcxx/__string:
:/emsdk/upstream/emscripten/system/include/libcxx/cstddef57::
50In file included from :/emsdk/upstream/emscripten/system/include/libcxx/algorithm9::639 :
error: /emsdk/upstream/emscripten/system/include/libcxx/initializer_list:no member named 'size_t' in the global namespace61
:5: error: unknown type name 'size_t'
using ::size_t;
      ~~^
    size_t    __size_;
    ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:In file included from 65:/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc38::4 :
errorIn file included from : /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7unknown type name 'size_t':

In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:639:
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:61    initializer_list(const _Ep* __b, size_t __s) _NOEXCEPT:5
:                                     ^
error: unknown type name 'size_t'
    size_t    __size_;
    ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:65:38: error: unknown type name 'size_t'
    initializer_list(const _Ep* __b, size_t __s) _NOEXCEPT
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:73:13: error: unknown type name 'size_t'
    typedef size_t    size_type;
            ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:73:13: error: unknown type name 'size_t'
    typedef size_t    size_type;
            ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:84:5: error: unknown type name 'size_t'
    size_t    size()  const _NOEXCEPT {return __size_;}
    ^
/emsdk/upstream/emscripten/system/include/libcxx/initializer_list:84:5: error: unknown type name 'size_t'
    size_t    size()  const _NOEXCEPT {return __size_;}
    ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1264:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS rank<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1276:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1276:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:

In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:640:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:418:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1278:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1278:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:640:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:418:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:640:
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:795:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS is_array<_Tp[_Np]>
                     ^
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:57:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/algorithm:640:
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:795:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS is_array<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1264:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS rank<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:/emsdk/upstream/emscripten/system/include/libcxx/type_traits32: :error: 1265use of undeclared identifier 'size_t'; did you mean 'sizeof'?
:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};    : public integral_constant<size_t, 0> {};

                               ^                                     ^

/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1264:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS rank<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
In file included from /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp:1:
In file included from /repo/src/3rd_party/./yaml-cpp/binary.h:10:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/yaml-cpp/.. -I/repo/src/3rd_party/yaml-cpp/. -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -c -pthread -pthread /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make:84: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:347: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/all] Error 2
[  6%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:417:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstddef:37:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:417:
/emsdk/upstream/emscripten/system/include/libcxx/cstddef:50:9: error: no member named 'size_t' in the global namespace
using ::size_t;
      ~~^
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/type_traits:418:
/repo/version:1:1: error: unknown type name 'v1'
v1.9.36
^
/repo/version:1:3: error: expected unqualified-id
v1.9.36
  ^
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:18:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/memory:652:
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:795:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS is_array<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1261:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1263:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1264:22: error: unknown type name 'size_t'
template <class _Tp, size_t _Np> struct _LIBCPP_TEMPLATE_VIS rank<_Tp[_Np]>
                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:38: error: expected expression
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1265:51: error: expected class name
    : public integral_constant<size_t, rank<_Tp>::value + 1> {};
                                                  ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1276:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1276:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1278:32: error: use of undeclared identifier 'size_t'; did you mean 'sizeof'?
    : public integral_constant<size_t, 0> {};
                               ^
/emsdk/upstream/emscripten/system/include/libcxx/type_traits:1278:38: error: expected expression
    : public integral_constant<size_t, 0> {};
                                     ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:100: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:114: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o] Error 1
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/bpe_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:128: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o] Error 1
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/char_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:142: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:428: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/all] Error 2
make: *** [Makefile:172: all] Error 2
make: make -j4

* master: (29 commits)
  Compile guards for CPU and GPU only builds
  Fix marian conv by taking it from intgemm_reintegrated
  clipValue error
  Fix windows compiler warnings
  Update to latest intgemm version
  Update intgemm
  Merged, slow as hell
  Move batched GEMM back (marian-nmt#710)
  Fix MPI on GCC8+ (marian-nmt#742)
  Fixes bug for certain reductions (marian-nmt#746)
  Updates to GitHub CI workflows (marian-nmt#730)
  Release workflows (marian-nmt#731)
  Update VERSION
  Remove duplicated EXT_LIBS (marian-nmt#728)
  Old CMAKE does not understand VERSION_EQUAL_GREATER
  suppress sentencepiece warnings for g++ > 8.0
  Merged PR 14474: CMake build fixes for QuickSAND
  Compute75 for NCCL (marian-nmt#711)
  Enable final stack post-processing for transformer for correct prenorm behavior (marian-nmt#719)
  fix compilation with -DCOMPILE_CPU=off
  ...

# Conflicts:
#	src/3rd_party/CMakeLists.txt
#	src/CMakeLists.txt
@motin motin changed the title Compile marian-decoder to wasm Compile libmariandecoder to wasm Nov 13, 2020
@motin
Copy link
Author

motin commented Nov 13, 2020

Current status: Something in marian's root CMake config is interfering with emscriptens environment. Building sentencepiece directly in its 3rd_party subfolder using emscripten works (cd docker && make wasm-image && make compile-sentencepiece-wasm):

configure: cmake --debug-output -Wno-dev -DCOMPILE_WASM=on -DSPM_ENABLE_SHARED=off -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"
[100%] Built target sentencepiece-static
make: make -j4

...but when it is invoked via marian's CMake (cd docker && make wasm-image && make compile-wasm) it fails with multiple wasi assertion failures:

In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~

This showed the same symptoms, but those were removed by removing files named "VERSION" in the include path (done in 7570ef2 and 7aea659 above). Something interferes with emscriptens environment, possibly making the code include the system's stddef.h rather than emscripten's, but I don't see where this is happening.

Also applied the advice from https://stackoverflow.com/a/54386659/682317 in 8326954 but it did not help.

@XapaJIaMnu
Copy link
Collaborator

@motin do a make VERBOSE=1 so you can see the make command exactly and see what is the erroneous/path things included. THen we can see where it is from and remove it.

@ugermann
Copy link
Member

ugermann commented Nov 13, 2020

I'm currently not able to run make compile-sentencepiece-wasm successfully.

To make things work on my environment, I had to resurrect a few things from my marian-docker setup (most notabley: run things in the Docker container with the same user id and group id as I have on the host); to be able to build both on the host and in the Docker container, I also put back some git path mount hacks do deal with git submodule issues. You'll find these changes in branch ug-compile-wasm, which branches off of compile-wasm.

docker run --rm -v/home/shared/germann/code/bergamot/marian-dev-wasm/docker/..:/repo -v/home/germann/.ccache:/.ccache -v/home/shared/germann/code/bergamot/marian-dev-wasm/docker/../.git:/home/shared/germann/code/bergamot/marian-dev-wasm/docker/.git -v/home/shared/germann/code/bergamot/marian-dev-wasm/docker/../.gitmodules:/home/shared/germann/code/bergamot/marian-dev-wasm/docker/.gitmodules --user $(id -u):$(id -g)  local/marian-build-wasm bash -c 'mkdir -p /repo/src/3rd_party/sentencepiece/build-wasm-docker && \
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker && \
(emcmake cmake --debug-output -Wno-dev -DCOMPILE_WASM=on -DSPM_ENABLE_SHARED=off -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. && \
(emmake make  ) || \
rm CMakeCache.txt)'
Running with debug output on.
-- VERSION: 0.1.6
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
CMake Error at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:469 (file):
  file STRINGS file
  "/root/protobuf-wasm-lib/dist/include/google/protobuf/stubs/common.h"
  cannot be read.
Call Stack (most recent call first):
  src/CMakeLists.txt:15 (find_package)


   Called from: [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
CMake Error at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:475 (math):
  math cannot parse the expression: " / 1000000": syntax error, unexpected
  exp_DIVIDE (2).
Call Stack (most recent call first):
  src/CMakeLists.txt:15 (find_package)


   Called from: [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
CMake Error at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:476 (math):
  math cannot parse the expression: " / 1000 % 1000": syntax error,
  unexpected exp_DIVIDE (2).
Call Stack (most recent call first):
  src/CMakeLists.txt:15 (find_package)


   Called from: [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
CMake Error at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:477 (math):
  math cannot parse the expression: " % 1000": syntax error, unexpected
  exp_MOD (2).
Call Stack (most recent call first):
  src/CMakeLists.txt:15 (find_package)


   Called from: [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
CMake Warning at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:500 (message):
  Protobuf compiler version 3.6.1 doesn't match library version
  ERROR.ERROR.ERROR
Call Stack (most recent call first):
  src/CMakeLists.txt:15 (find_package)


   Called from: [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Found Protobuf: /root/protobuf-wasm-lib/dist/lib/libprotobuf.a (found version "ERROR.ERROR.ERROR") 
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Found Threads: TRUE  
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindThreads.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Not Found TCMalloc: TCMALLOC_LIB-NOTFOUND
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
   Returning to         /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Configuring incomplete, errors occurred!
See also "/repo/src/3rd_party/sentencepiece/build-wasm-docker/CMakeFiles/CMakeOutput.log".
configure: cmake --debug-output -Wno-dev -DCOMPILE_WASM=on -DSPM_ENABLE_SHARED=off -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"

@motin
Copy link
Author

motin commented Nov 13, 2020

@ugermann I see, that looks like a permission error:

CMake Error at /usr/share/cmake-3.17/Modules/FindProtobuf.cmake:469 (file):
  file STRINGS file
  "/root/protobuf-wasm-lib/dist/include/google/protobuf/stubs/common.h"
  cannot be read.

On my docker setup I can step into a container (docker native-shell) and access the /root/protobuf-wasm-lib/dist/include/google/protobuf/stubs/common.h file. Sentencepiece also compiles.

A workaround can be to copy the source code into the docker image and then build without any mounts, that should make the docker approach more portable.

@motin
Copy link
Author

motin commented Nov 13, 2020

@motin do a make VERBOSE=1 so you can see the make command exactly and see what is the erroneous/path things included. THen we can see where it is from and remove it.

@XapaJIaMnu A yes, good suggestion. Here is log output from the successful sentencepiece compilation:

$ make compile-sentencepiece-wasm
docker run --rm -v/***/bergamot-translator-wasm/3rd_party/marian-dev/docker/..:/repo -v/Users/motin/.ccache:/.ccache  local/marian-build-wasm bash -c '(rm -rf /repo/src/3rd_party/sentencepiece/build-wasm-docker || true) && \
mkdir -p /repo/src/3rd_party/sentencepiece/build-wasm-docker && \
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker && \
(emcmake cmake --debug-output -Wno-dev -DCOMPILE_WASM=on -DSPM_ENABLE_SHARED=off -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. && \
(emmake make VERBOSE=1 -j4) || \
rm CMakeCache.txt)'
Running with debug output on.
-- VERSION: 0.1.6
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Found Protobuf: /root/protobuf-wasm-lib/dist/lib/libprotobuf.a (found version "3.6.1")
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Not Found TCMalloc: TCMALLOC_LIB-NOTFOUND
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
   Returning to         /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Configuring done
-- Generating /repo/src/3rd_party/sentencepiece/build-wasm-docker
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Generating /repo/src/3rd_party/sentencepiece/build-wasm-docker/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Generating done
-- Build files have been written to: /repo/src/3rd_party/sentencepiece/build-wasm-docker
configure: cmake --debug-output -Wno-dev -DCOMPILE_WASM=on -DSPM_ENABLE_SHARED=off -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"
/usr/bin/cmake -S/repo/src/3rd_party/sentencepiece -B/repo/src/3rd_party/sentencepiece/build-wasm-docker --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /repo/src/3rd_party/sentencepiece/build-wasm-docker/CMakeFiles /repo/src/3rd_party/sentencepiece/build-wasm-docker/CMakeFiles/progress.marks
make  -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
make  -f src/CMakeFiles/sentencepiece-static.dir/build.make src/CMakeFiles/sentencepiece-static.dir/depend
make[2]: Entering directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
[ 11%] Running cpp protocol buffer compiler on sentencepiece_model.proto
[ 11%] Running cpp protocol buffer compiler on sentencepiece.proto
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /usr/bin/protoc --cpp_out /repo/src/3rd_party/sentencepiece/build-wasm-docker/src -I /repo/src/3rd_party/sentencepiece/src /repo/src/3rd_party/sentencepiece/src/sentencepiece.proto
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /usr/bin/protoc --cpp_out /repo/src/3rd_party/sentencepiece/build-wasm-docker/src -I /repo/src/3rd_party/sentencepiece/src /repo/src/3rd_party/sentencepiece/src/sentencepiece_model.proto
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo/src/3rd_party/sentencepiece /repo/src/3rd_party/sentencepiece/src /repo/src/3rd_party/sentencepiece/build-wasm-docker /repo/src/3rd_party/sentencepiece/build-wasm-docker/src /repo/src/3rd_party/sentencepiece/build-wasm-docker/src/CMakeFiles/sentencepiece-static.dir/DependInfo.cmake --color=
Dependee "/repo/src/3rd_party/sentencepiece/build-wasm-docker/src/CMakeFiles/sentencepiece-static.dir/DependInfo.cmake" is newer than depender "/repo/src/3rd_party/sentencepiece/build-wasm-docker/src/CMakeFiles/sentencepiece-static.dir/depend.internal".
Dependee "/repo/src/3rd_party/sentencepiece/build-wasm-docker/src/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/src/3rd_party/sentencepiece/build-wasm-docker/src/CMakeFiles/sentencepiece-static.dir/depend.internal".
Scanning dependencies of target sentencepiece-static
make[2]: Leaving directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
make  -f src/CMakeFiles/sentencepiece-static.dir/build.make src/CMakeFiles/sentencepiece-static.dir/build
make[2]: Entering directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
[ 22%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c /repo/src/3rd_party/sentencepiece/build-wasm-docker/src/sentencepiece.pb.cc
[ 27%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o
[ 27%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/bpe_model.cc
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -c /repo/src/3rd_party/sentencepiece/build-wasm-docker/src/sentencepiece_model.pb.cc
[ 33%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/char_model.cc
[ 38%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/error.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/error.cc.o -c /repo/src/3rd_party/sentencepiece/src/error.cc
[ 44%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/filesystem.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/filesystem.cc.o -c /repo/src/3rd_party/sentencepiece/src/filesystem.cc
[ 50%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/flags.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/flags.cc.o -c /repo/src/3rd_party/sentencepiece/src/flags.cc
[ 55%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/model_factory.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/model_factory.cc.o -c /repo/src/3rd_party/sentencepiece/src/model_factory.cc
[ 61%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/model_interface.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/model_interface.cc.o -c /repo/src/3rd_party/sentencepiece/src/model_interface.cc
[ 66%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/normalizer.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/normalizer.cc.o -c /repo/src/3rd_party/sentencepiece/src/normalizer.cc
[ 72%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/sentencepiece_processor.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/sentencepiece_processor.cc.o -c /repo/src/3rd_party/sentencepiece/src/sentencepiece_processor.cc
[ 77%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/unigram_model.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/unigram_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/unigram_model.cc
[ 83%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/util.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/util.cc.o -c /repo/src/3rd_party/sentencepiece/src/util.cc
[ 88%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/word_model.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/word_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/word_model.cc
[ 94%] Building CXX object src/CMakeFiles/sentencepiece-static.dir/__/third_party/absl/strings/string_view.cc.o
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/__/third_party/absl/strings/string_view.cc.o -c /repo/src/3rd_party/sentencepiece/third_party/absl/strings/string_view.cc
[100%] Linking CXX static library libsentencepiece.a
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /usr/bin/cmake -P CMakeFiles/sentencepiece-static.dir/cmake_clean_target.cmake
cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/sentencepiece-static.dir/link.txt --verbose=1
/emsdk/upstream/emscripten/emar qc libsentencepiece.a  CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o CMakeFiles/sentencepiece-static.dir/char_model.cc.o CMakeFiles/sentencepiece-static.dir/error.cc.o CMakeFiles/sentencepiece-static.dir/filesystem.cc.o CMakeFiles/sentencepiece-static.dir/flags.cc.o CMakeFiles/sentencepiece-static.dir/model_factory.cc.o CMakeFiles/sentencepiece-static.dir/model_interface.cc.o CMakeFiles/sentencepiece-static.dir/normalizer.cc.o CMakeFiles/sentencepiece-static.dir/sentencepiece_processor.cc.o CMakeFiles/sentencepiece-static.dir/unigram_model.cc.o CMakeFiles/sentencepiece-static.dir/util.cc.o CMakeFiles/sentencepiece-static.dir/word_model.cc.o CMakeFiles/sentencepiece-static.dir/__/third_party/absl/strings/string_view.cc.o
/emsdk/upstream/emscripten/emranlib libsentencepiece.a
make[2]: Leaving directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
[100%] Built target sentencepiece-static
make[1]: Leaving directory '/repo/src/3rd_party/sentencepiece/build-wasm-docker'
/usr/bin/cmake -E cmake_progress_start /repo/src/3rd_party/sentencepiece/build-wasm-docker/CMakeFiles 0
make: make VERBOSE=1 -j4

And an unsuccessful one (reproduced with the help from the verbose make output):

root@e6d245e2201a:/repo/build-wasm-docker# make  -f src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build
[ 18%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:100: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o] Error 1
Full compilation output (click to expand)
$ make compile-wasm
docker run --rm -v/***/bergamot-translator-wasm/3rd_party/marian-dev/docker/..:/repo -v/Users/motin/.ccache:/.ccache  local/marian-build-wasm bash -c '(rm -rf /repo/build-wasm-docker || true) && \
mkdir -p /repo/build-wasm-docker && \
cd /repo/build-wasm-docker && \
(emcmake cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DGIT_REVISION="f00f00f0 2020-11-13 09:51:29 +0200" -DPROJECT_VERSION_GIT_SHA="f00f00f0" -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DUSE_DOXYGEN=off -DUSE_FBGEMM=off -DCOMPILE_LIBRARY_ONLY=on -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. && \
(emmake make VERBOSE=1 -j4) || \
rm CMakeCache.txt)'
Running with debug output on.
-- Project name: marian
   Called from: [1]	/repo/CMakeLists.txt
-- Project version: v1.9.37+f00f00f0
   Called from: [1]	/repo/CMakeLists.txt
-- Updating git submodules
   Called from: [1]	/repo/CMakeLists.txt
fatal: not a git repository: /repo/../../.git/modules/3rd_party/marian-dev
-- Checking support for CPU intrinsics
   Called from: [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSSE3 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for SSE4.1 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX2 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- Could not find hardware support for AVX512 on this machine.
   Called from: [2]	/repo/cmake/FindSSE.cmake
                [1]	/repo/CMakeLists.txt
-- SSE2 support found
   Called from: [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:382 (message):
  COMPILE_CUDA=off : Building only CPU version


   Called from: [1]	/repo/CMakeLists.txt
-- Not Found Tcmalloc
   Called from: [2]	/repo/cmake/FindTcmalloc.cmake
                [1]	/repo/CMakeLists.txt
CMake Warning at CMakeLists.txt:419 (message):
  Cannot find TCMalloc library.  Continuing.


   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src
   Called from: [1]	/repo/CMakeLists.txt
   Entering             /repo/src/3rd_party
   Called from: [1]	/repo/src/CMakeLists.txt
   Entering             /repo/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:25 (message):
  Not building AVX512BW-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
CMake Warning at src/3rd_party/intgemm/CMakeLists.txt:33 (message):
  Not building AVX512VNNI-based multiplication because your compiler is
  too old.

  For details rerun cmake with --debug-trycompile then try to build in
  compile_tests/CMakeFiles/CMakeTmp.


   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
CMake Warning at src/3rd_party/CMakeLists.txt:67 (message):
  You are compiling SentencePiece binaries with -DUSE_STATIC_LIBS=on.  This
  will cause spm_train to segfault.  No need to worry if you do not intend to
  use that binary.  Marian support for SentencePiece will work fine.


   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- VERSION: 0.1.6
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Entering             /repo/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Found Protobuf: /root/protobuf-wasm-lib/dist/lib/libprotobuf.a (found version "3.6.1")
   Called from: [4]	/usr/share/cmake-3.17/Modules/FindPackageMessage.cmake
                [3]	/usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake
                [2]	/usr/share/cmake-3.17/Modules/FindProtobuf.cmake
                [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Not Found TCMalloc: TCMALLOC_LIB-NOTFOUND
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
   Returning to         /repo/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
   Returning to         /repo/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
   Returning to         /repo/src
   Called from: [1]	/repo/src/CMakeLists.txt
   Returning to         /repo
   Called from: [1]	/repo/CMakeLists.txt
-- Configuring done
-- Generating /repo/build-wasm-docker
   Called from: [1]	/repo/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src
   Called from: [1]	/repo/src/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party
   Called from: [1]	/repo/src/3rd_party/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/yaml-cpp
   Called from: [1]	/repo/src/3rd_party/yaml-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/pathie-cpp
   Called from: [1]	/repo/src/3rd_party/pathie-cpp/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/intgemm
   Called from: [1]	/repo/src/3rd_party/intgemm/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece
   Called from: [1]	/repo/src/3rd_party/sentencepiece/CMakeLists.txt
-- Generating /repo/build-wasm-docker/src/3rd_party/sentencepiece/src
   Called from: [1]	/repo/src/3rd_party/sentencepiece/src/CMakeLists.txt
-- Generating done
-- Build files have been written to: /repo/build-wasm-docker
configure: cmake --debug-output -Wno-dev -DBUILD_ARCH=native -DCMAKE_BUILD_TYPE=Release -DGIT_REVISION=f00f00f0 2020-11-13 09:51:29 +0200 -DPROJECT_VERSION_GIT_SHA=f00f00f0 -DUSE_STATIC_LIBS=on -DUSE_SENTENCEPIECE=on -DCOMPILE_CUDA=off -DUSE_DOXYGEN=off -DUSE_FBGEMM=off -DCOMPILE_LIBRARY_ONLY=on -DMKL=off -DCOMPILE_CPU=off -DCOMPILE_WASM=on -DProtobuf_INCLUDE_DIR=/root/protobuf-wasm-lib/dist/include -DProtobuf_LIBRARY=/root/protobuf-wasm-lib/dist/lib/libprotobuf.a .. -DCMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR="/emsdk/node/12.18.1_64bit/bin/node"
/usr/bin/cmake -S/repo -B/repo/build-wasm-docker --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /repo/build-wasm-docker/CMakeFiles /repo/build-wasm-docker/CMakeFiles/progress.marks
make  -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/repo/build-wasm-docker'
make  -f src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/depend
make  -f src/CMakeFiles/marian_version.dir/build.make src/CMakeFiles/marian_version.dir/depend
make  -f src/3rd_party/CMakeFiles/3rd_party_installs.dir/build.make src/3rd_party/CMakeFiles/3rd_party_installs.dir/depend
make  -f src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/depend
make[2]: Entering directory '/repo/build-wasm-docker'
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src /repo/build-wasm-docker /repo/build-wasm-docker/src /repo/build-wasm-docker/src/CMakeFiles/marian_version.dir/DependInfo.cmake --color=
make[2]: Entering directory '/repo/build-wasm-docker'
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src/3rd_party /repo/build-wasm-docker /repo/build-wasm-docker/src/3rd_party /repo/build-wasm-docker/src/3rd_party/CMakeFiles/3rd_party_installs.dir/DependInfo.cmake --color=
Dependee "/repo/build-wasm-docker/src/CMakeFiles/marian_version.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/CMakeFiles/marian_version.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/CMakeFiles/marian_version.dir/depend.internal".
make[2]: Entering directory '/repo/build-wasm-docker'
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src/3rd_party/yaml-cpp /repo/build-wasm-docker /repo/build-wasm-docker/src/3rd_party/yaml-cpp /repo/build-wasm-docker/src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/DependInfo.cmake --color=
Dependee "/repo/build-wasm-docker/src/3rd_party/CMakeFiles/3rd_party_installs.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/CMakeFiles/3rd_party_installs.dir/depend.internal".
make[2]: Entering directory '/repo/build-wasm-docker'
Dependee "/repo/build-wasm-docker/src/3rd_party/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/CMakeFiles/3rd_party_installs.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/yaml-cpp/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/depend.internal".
[  1%] Running cpp protocol buffer compiler on sentencepiece_model.proto
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /usr/bin/protoc --cpp_out /repo/build-wasm-docker/src/3rd_party/sentencepiece/src -I /repo/src/3rd_party/sentencepiece/src /repo/src/3rd_party/sentencepiece/src/sentencepiece_model.proto
Scanning dependencies of target marian_version
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/CMakeFiles/marian_version.dir/build.make src/CMakeFiles/marian_version.dir/build
Scanning dependencies of target 3rd_party_installs
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/3rd_party/CMakeFiles/3rd_party_installs.dir/build.make src/3rd_party/CMakeFiles/3rd_party_installs.dir/build
make[2]: Entering directory '/repo/build-wasm-docker'
make[2]: Nothing to be done for 'src/CMakeFiles/marian_version.dir/build'.
make[2]: Leaving directory '/repo/build-wasm-docker'
make[2]: Entering directory '/repo/build-wasm-docker'
make[2]: Nothing to be done for 'src/3rd_party/CMakeFiles/3rd_party_installs.dir/build'.
make[2]: Leaving directory '/repo/build-wasm-docker'
[  2%] Built target 3rd_party_installs
make  -f src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/build.make src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/depend
[  2%] Built target marian_version
make  -f src/3rd_party/intgemm/CMakeFiles/intgemm.dir/build.make src/3rd_party/intgemm/CMakeFiles/intgemm.dir/depend
[  4%] Running cpp protocol buffer compiler on sentencepiece.proto
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /usr/bin/protoc --cpp_out /repo/build-wasm-docker/src/3rd_party/sentencepiece/src -I /repo/src/3rd_party/sentencepiece/src /repo/src/3rd_party/sentencepiece/src/sentencepiece.proto
make[2]: Entering directory '/repo/build-wasm-docker'
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src/3rd_party/pathie-cpp /repo/build-wasm-docker /repo/build-wasm-docker/src/3rd_party/pathie-cpp /repo/build-wasm-docker/src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/DependInfo.cmake --color=
make[2]: Entering directory '/repo/build-wasm-docker'
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src/3rd_party/intgemm /repo/build-wasm-docker /repo/build-wasm-docker/src/3rd_party/intgemm /repo/build-wasm-docker/src/3rd_party/intgemm/CMakeFiles/intgemm.dir/DependInfo.cmake --color=
Dependee "/repo/build-wasm-docker/src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/pathie-cpp/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/intgemm/CMakeFiles/intgemm.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/intgemm/CMakeFiles/intgemm.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/intgemm/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/intgemm/CMakeFiles/intgemm.dir/depend.internal".
cd /repo/build-wasm-docker && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /repo /repo/src/3rd_party/sentencepiece/src /repo/build-wasm-docker /repo/build-wasm-docker/src/3rd_party/sentencepiece/src /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/DependInfo.cmake --color=
Dependee "/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/DependInfo.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/depend.internal".
Dependee "/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/repo/build-wasm-docker/src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/depend.internal".
Scanning dependencies of target intgemm
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/3rd_party/intgemm/CMakeFiles/intgemm.dir/build.make src/3rd_party/intgemm/CMakeFiles/intgemm.dir/build
make[2]: Entering directory '/repo/build-wasm-docker'
[  5%] Building CXX object src/3rd_party/intgemm/CMakeFiles/intgemm.dir/intgemm/intgemm.cc.o
cd /repo/build-wasm-docker/src/3rd_party/intgemm && /emsdk/upstream/emscripten/em++   @CMakeFiles/intgemm.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g    -Wall -Wextra -pedantic -Werror -Wno-unknown-pragmas -std=gnu++11 -o CMakeFiles/intgemm.dir/intgemm/intgemm.cc.o -c /repo/src/3rd_party/intgemm/intgemm/intgemm.cc
Scanning dependencies of target pathie-cpp
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/build.make src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/build
make[2]: Entering directory '/repo/build-wasm-docker'
[  7%] Building CXX object src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/src/entry_iterator.cpp.o
cd /repo/build-wasm-docker/src/3rd_party/pathie-cpp && /emsdk/upstream/emscripten/em++   @CMakeFiles/pathie-cpp.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g     -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/pathie-cpp.dir/src/entry_iterator.cpp.o -c /repo/src/3rd_party/pathie-cpp/src/entry_iterator.cpp
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.cc:1:
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.h:45:
/repo/src/3rd_party/intgemm/intgemm/types.h:82:9: error: unknown type name '__m256i'
typedef __m256i Register;
        ^
/repo/src/3rd_party/intgemm/intgemm/types.h:83:9: error: unknown type name '__m256'
typedef __m256 FRegister;
        ^
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.cc:1:
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.h:46:
In file included from /repo/src/3rd_party/intgemm/intgemm/sse2_gemm.h:3:
In file included from /repo/src/3rd_party/intgemm/intgemm/kernels.h:4:
In file included from /repo/src/3rd_party/intgemm/intgemm/intrinsics.h:6:
/emsdk/upstream/emscripten/system/include/SSE/tmmintrin.h:11:2: error: "SSSE3 instruction set not enabled"
#error "SSSE3 instruction set not enabled"
 ^
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.cc:1:
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.h:46:
In file included from /repo/src/3rd_party/intgemm/intgemm/sse2_gemm.h:3:
In file included from /repo/src/3rd_party/intgemm/intgemm/kernels.h:4:
In file included from /repo/src/3rd_party/intgemm/intgemm/intrinsics.h:6:
In file included from /emsdk/upstream/emscripten/system/include/SSE/tmmintrin.h:14:
/emsdk/upstream/emscripten/system/include/SSE/pmmintrin.h:11:2: error: "SSE3 instruction set not enabled"
#error "SSE3 instruction set not enabled"
 ^
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.cc:1:
In file included from /repo/src/3rd_party/intgemm/intgemm/intgemm.h:46:
In file included from /repo/src/3rd_party/intgemm/intgemm/sse2_gemm.h:3:
In file included from /repo/src/3rd_party/intgemm/intgemm/kernels.h:4:
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:218:28: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i abs_epi8(__m256i arg) {
                           ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:218:45: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i abs_epi8(__m256i arg) {
                                            ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:221:28: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi8(__m256i a, __m256i b) {
                           ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:221:45: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi8(__m256i a, __m256i b) {
                                            ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:221:56: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi8(__m256i a, __m256i b) {
                                                       ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:224:28: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi16(__m256i a, __m256i b) {
                           ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:224:46: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi16(__m256i a, __m256i b) {
                                             ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:224:57: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi16(__m256i a, __m256i b) {
                                                        ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:227:28: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi32(__m256i first, __m256i second) {
                           ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:227:46: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi32(__m256i first, __m256i second) {
                                             ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:227:61: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i add_epi32(__m256i first, __m256i second) {
                                                            ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:230:28: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i adds_epi16(__m256i first, __m256i second) {
                           ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:230:47: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i adds_epi16(__m256i first, __m256i second) {
                                              ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:230:62: error: unknown type name '__m256i'
INTGEMM_AVX2 static inline __m256i adds_epi16(__m256i first, __m256i second) {
                                                             ^
/repo/src/3rd_party/intgemm/intgemm/intrinsics.h:233:28: error: unknown type name '__m256d'
INTGEMM_AVX2 static inline __m256d add_pd(__m256d a, __m256d b) {
                           ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/build-wasm-docker/src/3rd_party/intgemm -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -Wall -Wextra -pedantic -Werror -Wno-unknown-pragmas -std=gnu++11 -o CMakeFiles/intgemm.dir/intgemm/intgemm.cc.o -c -pthread -pthread /repo/src/3rd_party/intgemm/intgemm/intgemm.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/intgemm.dir/intgemm/intgemm.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/intgemm/CMakeFiles/intgemm.dir/build.make:84: src/3rd_party/intgemm/CMakeFiles/intgemm.dir/intgemm/intgemm.cc.o] Error 1
make[2]: Leaving directory '/repo/build-wasm-docker'
make[1]: *** [CMakeFiles/Makefile2:372: src/3rd_party/intgemm/CMakeFiles/intgemm.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
In file included from /repo/src/3rd_party/pathie-cpp/src/entry_iterator.cpp:31:
In file included from /repo/src/3rd_party/pathie-cpp/src/../include/path.hpp:32:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[  8%] Building CXX object src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/src/errors.cpp.o
cd /repo/build-wasm-docker/src/3rd_party/pathie-cpp && /emsdk/upstream/emscripten/em++   @CMakeFiles/pathie-cpp.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g     -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/pathie-cpp.dir/src/errors.cpp.o -c /repo/src/3rd_party/pathie-cpp/src/errors.cpp
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Scanning dependencies of target libyaml-cpp
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build
make[2]: Entering directory '/repo/build-wasm-docker'
[  9%] Building CXX object src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o
cd /repo/build-wasm-docker/src/3rd_party/yaml-cpp && /emsdk/upstream/emscripten/em++   @CMakeFiles/libyaml-cpp.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g     -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -c /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/pathie-cpp/.. -I/repo/src/3rd_party/pathie-cpp/. -I/repo/src/3rd_party/pathie-cpp/include -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/pathie-cpp.dir/src/entry_iterator.cpp.o -c -pthread -pthread /repo/src/3rd_party/pathie-cpp/src/entry_iterator.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/pathie-cpp.dir/src/entry_iterator.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
In file included from /repo/src/3rd_party/pathie-cpp/src/errors.cpp:30:
In file included from /repo/src/3rd_party/pathie-cpp/src/../include/errors.hpp:33:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/build.make:84: src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/src/entry_iterator.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 11%] Building CXX object src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/contrib/graphbuilder.cpp.o
cd /repo/build-wasm-docker/src/3rd_party/yaml-cpp && /emsdk/upstream/emscripten/em++   @CMakeFiles/libyaml-cpp.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g     -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilder.cpp.o -c /repo/src/3rd_party/yaml-cpp/contrib/graphbuilder.cpp
In file included from /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp:1:
In file included from /repo/src/3rd_party/./yaml-cpp/binary.h:10:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/pathie-cpp/.. -I/repo/src/3rd_party/pathie-cpp/. -I/repo/src/3rd_party/pathie-cpp/include -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/pathie-cpp.dir/src/errors.cpp.o -c -pthread -pthread /repo/src/3rd_party/pathie-cpp/src/errors.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/pathie-cpp.dir/src/errors.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/build.make:98: src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/src/errors.cpp.o] Error 1
make[2]: Leaving directory '/repo/build-wasm-docker'
make[1]: *** [CMakeFiles/Makefile2:345: src/3rd_party/pathie-cpp/CMakeFiles/pathie-cpp.dir/all] Error 2
[ 12%] Building CXX object src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/contrib/graphbuilderadapter.cpp.o
cd /repo/build-wasm-docker/src/3rd_party/yaml-cpp && /emsdk/upstream/emscripten/em++   @CMakeFiles/libyaml-cpp.dir/includes_CXX.rsp -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g     -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilderadapter.cpp.o -c /repo/src/3rd_party/yaml-cpp/contrib/graphbuilderadapter.cpp
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/yaml-cpp/.. -I/repo/src/3rd_party/yaml-cpp/. -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -c -pthread -pthread /repo/src/3rd_party/yaml-cpp/binary_renamed.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make:84: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/binary_renamed.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /repo/src/3rd_party/yaml-cpp/contrib/graphbuilder.cpp:1:
In file included from /repo/src/3rd_party/yaml-cpp/contrib/graphbuilderadapter.h:16:
In file included from /repo/src/3rd_party/./yaml-cpp/contrib/graphbuilder.h:11:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/yaml-cpp/.. -I/repo/src/3rd_party/yaml-cpp/. -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilder.cpp.o -c -pthread -pthread /repo/src/3rd_party/yaml-cpp/contrib/graphbuilder.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilder.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make:98: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/contrib/graphbuilder.cpp.o] Error 1
Scanning dependencies of target sentencepiece-static
make[2]: Leaving directory '/repo/build-wasm-docker'
make  -f src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build
make[2]: Entering directory '/repo/build-wasm-docker'
[ 14%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g    -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc
[ 15%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g    -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -c /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc
[ 16%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/bpe_model.cc
In file included from /repo/src/3rd_party/yaml-cpp/contrib/graphbuilderadapter.cpp:1:
In file included from /repo/src/3rd_party/yaml-cpp/contrib/graphbuilderadapter.h:16:
In file included from /repo/src/3rd_party/./yaml-cpp/contrib/graphbuilder.h:11:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/yaml-cpp/.. -I/repo/src/3rd_party/yaml-cpp/. -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -fPIC -Wno-unused-value -std=gnu++11 -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilderadapter.cpp.o -c -pthread -pthread /repo/src/3rd_party/yaml-cpp/contrib/graphbuilderadapter.cpp -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/libyaml-cpp.dir/contrib/graphbuilderadapter.cpp.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/build.make:112: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/contrib/graphbuilderadapter.cpp.o] Error 1
make[2]: Leaving directory '/repo/build-wasm-docker'
make[1]: *** [CMakeFiles/Makefile2:318: src/3rd_party/yaml-cpp/CMakeFiles/libyaml-cpp.dir/all] Error 2
[ 18%] Building CXX object src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o
cd /repo/build-wasm-docker/src/3rd_party/sentencepiece/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC -std=c++11 -pthread  -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native  -msse2 -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g    -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -c /repo/src/3rd_party/sentencepiece/src/char_model.cc
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");/emsdk/upstream/emscripten/system/include/wasi/api.h
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:
1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/bpe_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:20:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.cc:15:
In file included from /repo/src/3rd_party/sentencepiece/src/char_model.h:18:
In file included from /repo/src/3rd_party/sentencepiece/src/model_interface.h:20:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:100: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece_model.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:114: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_model.pb.cc.o] Error 1
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/bpe_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:128: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o] Error 1
16 errors generated.
em++: error: '/emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -c -pthread -pthread /repo/src/3rd_party/sentencepiece/src/char_model.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/char_model.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr' failed (1)
make[2]: *** [src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/build.make:142: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o] Error 1
make[2]: Leaving directory '/repo/build-wasm-docker'
make[1]: *** [CMakeFiles/Makefile2:399: src/3rd_party/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/all] Error 2
make[1]: Leaving directory '/repo/build-wasm-docker'
make: *** [Makefile:172: all] Error 2
make: make VERBOSE=1 -j4

@motin
Copy link
Author

motin commented Nov 13, 2020

The different configurations lead to very different compiler commands:

The working setup uses:

cd /repo/src/3rd_party/sentencepiece/build-wasm-docker/src && /emsdk/upstream/emscripten/em++   @CMakeFiles/sentencepiece-static.dir/includes_CXX.rsp -O3 -Wall -fPIC    -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c /repo/src/3rd_party/sentencepiece/build-wasm-docker/src/sentencepiece.pb.cc

(Which results in a successful compilation, with nothing printed to stdout or stderr)

And the marian root CMake setup results in:

root@e6d245e2201a:/repo/build-wasm-docker/src/3rd_party/sentencepiece/src# /emsdk/upstream/bin/clang++ -target wasm32-unknown-emscripten -D__EMSCRIPTEN_major__=2 -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=8 -D_LIBCPP_ABI_VERSION=2 -Dunix -D__unix -D__unix__ -Werror=implicit-function-declaration -Xclang -nostdsysteminc -D__SSE__=1 -D__SSE2__=1 -Xclang -isystem/emsdk/upstream/emscripten/system/include/libcxx -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libcxxabi/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/compat -Xclang -isystem/emsdk/upstream/emscripten/system/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/libc -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten -Xclang -isystem/emsdk/upstream/emscripten/system/local/include -Xclang -isystem/emsdk/upstream/emscripten/system/include/SSE -Xclang -isystem/emsdk/upstream/emscripten/system/include/neon -Xclang -isystem/emsdk/upstream/emscripten/system/lib/compiler-rt/include -Xclang -isystem/emsdk/upstream/emscripten/system/lib/libunwind/include -Xclang -isystem/emsdk/upstream/emscripten/cache/wasm/include -DEMSCRIPTEN -fignore-exceptions -D__EMSCRIPTEN_PTHREADS__=1 -I/repo/src -I/repo/src/3rd_party/. -I/repo/src/3rd_party/sentencepiece/. -I/repo -I/repo/build-wasm-docker/src/3rd_party/sentencepiece -I/root/protobuf-wasm-lib/dist/include -I/repo/build-wasm-docker/src/3rd_party/sentencepiece/src -O3 -Wall -fPIC -std=c++11 -pthread -fPIC -Wno-unused-result -Wno-unknown-warning-option -Wno-unknown-cuda-version -march=native -msimd128 -DUSE_SENTENCEPIECE -O3 -m64 -funroll-loops -g -std=gnu++11 -Wno-misleading-indentation -Wno-unused-variable -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -c -pthread -pthread /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc -Xclang -isystem/emsdk/upstream/emscripten/system/include/SDL -c -o CMakeFiles/sentencepiece-static.dir/sentencepiece.pb.cc.o -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.cc:4:
In file included from /repo/build-wasm-docker/src/3rd_party/sentencepiece/src/sentencepiece.pb.h:7:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string:504:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/string_view:175:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/__string:58:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/cstdio:99:
In file included from /emsdk/upstream/emscripten/system/include/libcxx/stdio.h:107:
In file included from /emsdk/upstream/emscripten/system/include/libc/stdio.h:5:
/emsdk/upstream/emscripten/system/include/wasi/api.h:40:1: error: static_assert failed due to requirement 'alignof(void *) == 4' "non-wasi data layout"
_Static_assert(_Alignof(void*) == 4, "non-wasi data layout");
^              ~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:50:1: error: static_assert failed due to requirement 'sizeof(unsigned long) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_size_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:51:1: error: static_assert failed due to requirement 'alignof(unsigned long) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_size_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:686:1: error: static_assert failed due to requirement 'sizeof(__wasi_iovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_iovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:687:1: error: static_assert failed due to requirement 'alignof(__wasi_iovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_iovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:689:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_iovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_iovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:707:1: error: static_assert failed due to requirement 'sizeof(__wasi_ciovec_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_ciovec_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:708:1: error: static_assert failed due to requirement 'alignof(__wasi_ciovec_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_ciovec_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:710:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_ciovec_t, buf_len) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_ciovec_t, buf_len) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1617:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_dir_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_dir_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1618:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_dir_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_dir_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1632:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_u_t) == 4' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_u_t) == 4, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1633:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_u_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_u_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1651:1: error: static_assert failed due to requirement 'sizeof(__wasi_prestat_t) == 8' "witx calculated size"
_Static_assert(sizeof(__wasi_prestat_t) == 8, "witx calculated size");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1652:1: error: static_assert failed due to requirement 'alignof(__wasi_prestat_t) == 4' "witx calculated align"
_Static_assert(_Alignof(__wasi_prestat_t) == 4, "witx calculated align");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/emsdk/upstream/emscripten/system/include/wasi/api.h:1654:1: error: static_assert failed due to requirement '__builtin_offsetof(__wasi_prestat_t, u) == 4' "witx calculated offset"
_Static_assert(offsetof(__wasi_prestat_t, u) == 4, "witx calculated offset");
^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 errors generated.

@@ -99,11 +99,15 @@ class OutputPrinter {
std::string getWordScores(const Hypothesis::PtrType& hyp);

float getAlignmentThreshold(const std::string& str) {
#if WITHOUT_EXCEPTIONS
if (str.begin() == str.end()) return 0.f;
#else
Copy link

@yurydelendik yurydelendik Dec 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove pre-processor here. The logic of if (str.begin() == str.end()) applies for exception friendly code as well: there is no need to throw exception if you know string is empty. As a rule, a throw is always times slower than just if-check. Also, you will need that std::stof in the exception-free code.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

or return str.begin() == str.end() ? 0.f : std::max(std::stof(str), 0.f);

@abhi-agg
Copy link

abhi-agg commented Jan 11, 2021

Hey folks. I was trying to run float 32-bit inference in WASM using .bin model file instead of a .npz model file (everything works with a .npz model file). Doing so is throwing exception for me (only on wasm, not on native). Last few lines of the logs are below:

STDERR:  [2021-01-11 14:44:41] [config] word-scores: false 
STDERR:  [2021-01-11 14:44:41] [config] workspace: 128 
STDERR:  [2021-01-11 14:44:41] [data] Loading SentencePiece vocabulary from file /repo/models/vocab.esen.spm 2 
STDERR:  [2021-01-11 14:44:41] [data] Loading lexical shortlist as /repo/models/lex.s2t 50 50 0 
STDERR:  [2021-01-11 14:44:48] [memory] Extending reserved space to 128 MB (device cpu0) 
STDERR:  [2021-01-11 14:44:48] Loading scorer of type amun as feature F0 
STDERR:  [2021-01-11 14:44:48] Loading model from /repo/models/model.bin 
STDERR:  Just before task->run() 
STDERR:  Translate instance run() entered 
STDERR:  RUN 1 
STDERR:  [2021-01-11 14:44:48] Error: Graph was reloaded and parameter 'F0::encoder_Wemb' with type float32 (specified: false) is newly created 
STDERR:  [2021-01-11 14:44:48] Error: Aborted from marian::Expr marian::ExpressionGraph::param(const std::string &, const marian::Shape &, const Ptr<inits::NodeInitializer> &, const marian::Type, bool, bool) in /repo/src/graph/expression_graph.h:380 
STDERR:  Callstacks not supported in WASM builds currently

Could any one of you provide some hint what might be wrong in this case? We did disable few things in order to compile marian to wasm (e.g. zstr).

The following line of the log
Error: Graph was reloaded and parameter 'F0::encoder_Wemb' with type float32 (specified: false) is newly created
might provide us some info.

PS: I generated model.bin from model.npz using the command:
marian-conv -f model.npz -t model.bin --gemm-type float32

@motin
Copy link
Author

motin commented Jan 12, 2021

Updated benchmark report based on the latest code.

The 5 different setups:
 
A. Native decoder-only with OneDNN
B. Native decoder-only with WASM-compatible GEMM
C. WASM in Firefox Nightly with 8-bit wormhole enabled and --int8 added to WASM benchmark commands
D. WASM in Chrome Canary without --int8 added to WASM benchmark commands
C without --int8: WASM in Firefox Nightly without 8-bit wormhole enabled and without --int8 added to WASM benchmark commands
 
(Native options are compiled and running outside Docker)
 
B/A tells us how much slower the WASM-compatible code is vs the one we would use for a native binary.
C/B tells us how much slower the WASM-compatible code is when executing via WASM in Firefox Nightly vs natively.
D/B tells us how much slower the WASM-compatible code is when executing via WASM in Chrome Canary vs natively.
C/A tells us how much slower WASM in Firefox Nightly is compared to a native binary
D/A tells us how much slower WASM in Chrome Canary is compared to a native binary

Benchmark 7
Compilation flags: -O3 (WASM-builds: -g2)
Hardware: 2,9 GHz 6-Core Intel Core i9 MacBook Pro (15-inch, 2018)
CPU Threads: 1
Pthreads: Disabled explicitly for WASM builds
Mini/maxi batch sizes: 32/100
Model: esen.student.tiny11/model.intgemm.alphas.bin (16mb) [WASM: model.npz (65mb)]
Vocabulary: esen.student.tiny11/vocab.esen.spm (806K)
Lexical shortlist: esen.student.tiny11/lex.s2t (42mb)
Translation input: First 300 lines of newstest2013.es
Word count: 5644
Averaging: 5 consecutive runs
 
A: 3.3s for 5644 words = 1693 wps
B: 3.3s for 5644 words = 1694 wps
C: 9.7s for 5644 words = 579 wps
D: 27.3s for 5644 words = 207 wps

C without --int8: 16.6s for 5644 words = 339 wps

B/A: 1.0x slower
C/B: 2.9x slower
D/B: 8.2x slower
C/A: 2.9x slower
D/A: 8.2x slower
 
C without --int8 / C: 1.7x slower

Interestingly enough, intgemm inference on Chrome (or on Nightly without the wormhole enabled but with --int8 added to the benchmark command) results in slightly (appr 10-20%) slower than usual inferences times and with all translations ending up as strings of varying lengths of repeated "-" characters. Note that these numbers are not included above.

Also interesting is that the performance of the current code is performing much worse on Chrome than it did previously.

Note that native benchmarks are using model.intgemm.alphas.bin but WASM is still using model.npz until the above issues are sorted out.

@kpu
Copy link
Member

kpu commented Jan 12, 2021

Do I infer correctly that "C" at 9.7s is now the 8-bit wormhole?

@motin
Copy link
Author

motin commented Jan 12, 2021

Do I infer correctly that "C" at 9.7s is now the 8-bit wormhole?

Yes. And with the updated comment it should be clearer.

The wormhole / intgemm resulted in 70% higher wps in this benchmark.

@kpu
Copy link
Member

kpu commented Jan 12, 2021

It's pointless to measure words per second with corrupt output. Because often these just loop until they hit max sentence length. And decoding time is proportionate to sentence length. Can you clearly separate the ones with corrupt output?

@motin
Copy link
Author

motin commented Jan 12, 2021

It's pointless to measure words per second with corrupt output. Because often these just loop until they hit max sentence length. And decoding time is proportionate to sentence length. Can you clearly separate the ones with corrupt output?

Those numbers were excluded. I have updated the comment to clarify this.

@kpu
Copy link
Member

kpu commented Jan 12, 2021

So the wormhole is working but compiling raw _mm_maddubs_epi16 and _mm_madd_epi16 is producing incorrect results. Maybe this is a bug in the wasm compiler??? Out of curiosity, can you edit https://github.com/kpu/intgemm/blob/cc71e5c2a69755009667330af1f60a4ed15b5b63/intgemm/intrinsics.h#L97-L112 so that it runs both paths and compares them? if (!memcmp(&result_from_maddubs, &result_from_wormhole, 16)) abort();

@lars-t-hansen
Copy link

Indeed, if (a) the wormhole produces correct output and (b) the _mm_maddubs etc code produces correct output in Chrome but not in Firefox then I'd love to know what the inputs are that make it fail so that I can try to track down the problem.

@abhi-agg
Copy link

Interestingly enough, intgemm inference on Chrome (or on Nightly without the wormhole enabled but with --int8 added to the benchmark command) results in slightly (appr 10-20%) slower than usual inferences times and with all translations ending up as strings of varying lengths of repeated "-" characters.

@motin Is following the set up for the behavior above?
For Chrome: Marian compiled without wormhole and --int8 is used to run benchmark
For Firefox: Marian compiled without wormhole and --int8 is used to run benchmark

@motin
Copy link
Author

motin commented Jan 12, 2021

Interestingly enough, intgemm inference on Chrome (or on Nightly without the wormhole enabled but with --int8 added to the benchmark command) results in slightly (appr 10-20%) slower than usual inferences times and with all translations ending up as strings of varying lengths of repeated "-" characters.

@motin Is following the set up for the behavior above?
For Chrome: Marian compiled without wormhole and --int8 is used to run benchmark
For Firefox: Marian compiled without wormhole and --int8 is used to run benchmark

I clarified the original comment with the setups:

C. WASM in Firefox Nightly with 8-bit wormhole enabled and --int8 added to WASM benchmark commands
D. WASM in Chrome Canary without --int8 added to WASM benchmark commands
C without --int8: WASM in Firefox Nightly without 8-bit wormhole enabled and without --int8 added to WASM benchmark commands

@motin
Copy link
Author

motin commented Jan 12, 2021

Indeed, if (a) the wormhole produces correct output and (b) the _mm_maddubs etc code produces correct output in Chrome but not in Firefox then I'd love to know what the inputs are that make it fail so that I can try to track down the problem.

All WASM code benchmarked was compiled with wormhole instructions.

@abhi-agg
Copy link

abhi-agg commented Jan 12, 2021

Interestingly enough, intgemm inference on Chrome (or on Nightly without the wormhole enabled but with --int8 added to the benchmark command) results in slightly (appr 10-20%) slower than usual inferences times and with all translations ending up as strings of varying lengths of repeated "-" characters.

@motin Is following the set up for the behavior above?
For Chrome: Marian compiled without wormhole and --int8 is used to run benchmark
For Firefox: Marian compiled without wormhole and --int8 is used to run benchmark

I clarified the original comment with the setups:

C. WASM in Firefox Nightly with 8-bit wormhole enabled and --int8 added to WASM benchmark commands
D. WASM in Chrome Canary without --int8 added to WASM benchmark commands
C without --int8: WASM in Firefox Nightly without 8-bit wormhole enabled and without --int8 added to WASM benchmark commands

I know the confusion here. "8-bit wormhole enabled" can mean 2 things to me (and probably to all of us):

  1. Enabling it in Browser (which is applicable just for Firefox, not Chrome) via about:config
  2. Enabling it (the shuffle pattern corresponding to wormhole) in wasm builds of marian (otherwise shuffle pattern wouldn't compile) See this

When you say "8-bit wormhole enabled", I think you mean 1 here. And I think, in all WASM specific benchmarks you have 2 always enabled. If this is true then:

2 + Wormhole disabled (from about:config) Firefox Nightly + --int8 while running benchmark => Should not work
2 + Chrome + --int8 while running benchmark => Should not work

I can't explain the repeated "-" characters behavior. But I believe it might be a side-effect.

@motin
Copy link
Author

motin commented Jan 12, 2021

Thanks for the clarification, it makes it easy to explain what happens when :)

2 + Wormhole disabled (from about:config) Firefox Nightly + --int8 while running benchmark => Should not work
2 + Chrome + --int8 while running benchmark => Should not work

Exactly these two configurations are the ones that result in "-" of varying length as translation results. A pretty peculiar side effect :)

@XapaJIaMnu
Copy link
Collaborator

Wrong output just means the GEMM operations are not working properly and producing some random numbers. That's the "side effect"

@kpu
Copy link
Member

kpu commented Jan 12, 2021

Yeah it's the typical failure mode when GEMM is producing wrong answers. Nothing to see here, the wormhole instructions only work with the weird firefox configuration that supports them.

@motin
Copy link
Author

motin commented Mar 11, 2021

@abhi-agg Surely we can close this PR now since it has been superseeded by more recent PRs?

@abhi-agg
Copy link

@motin Let's not close this PR just now until I merge all changes to main branch. I will close it myself once the migration is complete 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants