I have been struggling to succesfully build the dependencies and thus the slam wasm for a while now. I am hoping you can point me in the right direction of the correct emscripten version to use or point out anything else I am missing. The logs below are only for Eigen, but I get similar fails in all dependency builds
I am on:
macOS: Monterey 12.6.7
node: 16.20.0
python: 3.7
and while Ive tried a few emsdk versions, including latest this was the last attempts versioning:
`Compiling with DEFAULT settings
Step 1/1 -------------------------------- Start building: EIGEN
configure: cmake -DCMAKE_CROSSCOMPILING_EMULATOR=/Users/p.thomas/realityBLU/emsdk/node/16.20.0_64bit/bin/node .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 -DCMAKE_TOOLCHAIN_FILE=/Users/p.thomas/RealityBLU/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake "-DCMAKE_CXX_FLAGS=-O3 -std=c++17" "-DCMAKE_C_FLAGS=-O3 -std=c++17" -DCMAKE_INSTALL_PREFIX=/Users/p.thomas/realityBLU/AlvaAR/src/libs/build/eigen/ -DBUILD_SHARED_LIBS=OFF
-- Performing Test EIGEN_COMPILER_SUPPORT_CPP11
-- Performing Test EIGEN_COMPILER_SUPPORT_CPP11 - Success
-- Performing Test COMPILER_SUPPORT_std=cpp03
-- Performing Test COMPILER_SUPPORT_std=cpp03 - Success
-- Performing Test standard_math_library_linked_to_automatically
-- Performing Test standard_math_library_linked_to_automatically - Success
-- Standard libraries to link to explicitly: none
-- Performing Test COMPILER_SUPPORT_WERROR
-- Performing Test COMPILER_SUPPORT_WERROR - Success
-- Performing Test COMPILER_SUPPORT_pedantic
-- Performing Test COMPILER_SUPPORT_pedantic - Success
-- Performing Test COMPILER_SUPPORT_Wall
-- Performing Test COMPILER_SUPPORT_Wall - Success
-- Performing Test COMPILER_SUPPORT_Wextra
-- Performing Test COMPILER_SUPPORT_Wextra - Success
-- Performing Test COMPILER_SUPPORT_Wundef
-- Performing Test COMPILER_SUPPORT_Wundef - Success
-- Performing Test COMPILER_SUPPORT_Wcastalign
-- Performing Test COMPILER_SUPPORT_Wcastalign - Success
-- Performing Test COMPILER_SUPPORT_Wcharsubscripts
-- Performing Test COMPILER_SUPPORT_Wcharsubscripts - Success
-- Performing Test COMPILER_SUPPORT_Wnonvirtualdtor
-- Performing Test COMPILER_SUPPORT_Wnonvirtualdtor - Success
-- Performing Test COMPILER_SUPPORT_Wunusedlocaltypedefs
-- Performing Test COMPILER_SUPPORT_Wunusedlocaltypedefs - Success
-- Performing Test COMPILER_SUPPORT_Wpointerarith
-- Performing Test COMPILER_SUPPORT_Wpointerarith - Success
-- Performing Test COMPILER_SUPPORT_Wwritestrings
-- Performing Test COMPILER_SUPPORT_Wwritestrings - Success
-- Performing Test COMPILER_SUPPORT_Wformatsecurity
-- Performing Test COMPILER_SUPPORT_Wformatsecurity - Success
-- Performing Test COMPILER_SUPPORT_Wshorten64to32
-- Performing Test COMPILER_SUPPORT_Wshorten64to32 - Success
-- Performing Test COMPILER_SUPPORT_Wlogicalop
-- Performing Test COMPILER_SUPPORT_Wlogicalop - Failed
-- Performing Test COMPILER_SUPPORT_Wenumconversion
-- Performing Test COMPILER_SUPPORT_Wenumconversion - Success
-- Performing Test COMPILER_SUPPORT_Wcpp11extensions
-- Performing Test COMPILER_SUPPORT_Wcpp11extensions - Success
-- Performing Test COMPILER_SUPPORT_Wdoublepromotion
-- Performing Test COMPILER_SUPPORT_Wdoublepromotion - Success
-- Performing Test COMPILER_SUPPORT_Wshadow
-- Performing Test COMPILER_SUPPORT_Wshadow - Success
-- Performing Test COMPILER_SUPPORT_Wnopsabi
-- Performing Test COMPILER_SUPPORT_Wnopsabi - Success
-- Performing Test COMPILER_SUPPORT_Wnovariadicmacros
-- Performing Test COMPILER_SUPPORT_Wnovariadicmacros - Success
-- Performing Test COMPILER_SUPPORT_Wnolonglong
-- Performing Test COMPILER_SUPPORT_Wnolonglong - Success
-- Performing Test COMPILER_SUPPORT_fnochecknew
-- Performing Test COMPILER_SUPPORT_fnochecknew - Success
-- Performing Test COMPILER_SUPPORT_fnocommon
-- Performing Test COMPILER_SUPPORT_fnocommon - Success
-- Performing Test COMPILER_SUPPORT_fstrictaliasing
-- Performing Test COMPILER_SUPPORT_fstrictaliasing - Success
-- Performing Test COMPILER_SUPPORT_wd981
-- Performing Test COMPILER_SUPPORT_wd981 - Failed
-- Performing Test COMPILER_SUPPORT_wd2304
-- Performing Test COMPILER_SUPPORT_wd2304 - Failed
-- Performing Test COMPILER_SUPPORT_STRICTANSI
-- Performing Test COMPILER_SUPPORT_STRICTANSI - Failed
-- Performing Test COMPILER_SUPPORT_Qunusedarguments
-- Performing Test COMPILER_SUPPORT_Qunusedarguments - Success
-- Performing Test COMPILER_SUPPORT_ansi
-- Performing Test COMPILER_SUPPORT_ansi - Success
-- Performing Test COMPILER_SUPPORT_OPENMP
-- Performing Test COMPILER_SUPPORT_OPENMP - Success
-- Found unsuitable Qt version "" from NOTFOUND
-- Looking for a Fortran compiler
-- Looking for a Fortran compiler - NOTFOUND
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - no
-- Could NOT find CHOLMOD (missing: CHOLMOD_INCLUDES CHOLMOD_LIBRARIES)
-- Could NOT find UMFPACK (missing: UMFPACK_INCLUDES UMFPACK_LIBRARIES)
-- Could NOT find KLU (missing: KLU_INCLUDES KLU_LIBRARIES)
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDES SUPERLU_LIBRARIES SUPERLU_VERSION_OK) (Required is at least version "4.0")
-- A version of Pastix has been found but pastix_nompi.h does not exist in the include directory. Because Eigen tests require a version without MPI, we disable the Pastix backend.
-- Could NOT find SPQR (missing: SPQR_INCLUDES SPQR_LIBRARIES)
-- Found unsuitable Qt version "" from NOTFOUND
-- Performing Test COMPILER_SUPPORT_FASTMATH
-- Performing Test COMPILER_SUPPORT_FASTMATH - Success
-- Could NOT find Boost (missing: Boost_INCLUDE_DIR) (Required is at least version "1.53.0")
-- Could NOT find Threads (missing: Threads_FOUND)
-- Could NOT find GoogleHash (missing: GOOGLEHASH_INCLUDES GOOGLEHASH_COMPILE)
-- Could NOT find Adolc (missing: ADOLC_INCLUDES ADOLC_LIBRARIES)
-- Could NOT find MPFR (missing: MPFR_INCLUDES MPFR_LIBRARIES MPFR_VERSION_OK) (Required is at least version "1.0.0")
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) (Required is at least version "7.0")
-- Found unsuitable Qt version "" from NOTFOUND
-- Qt4 not found, so disabling the mandelbrot and opengl demos
CMake Error: File /Users/p.thomas/realityBLU/AlvaAR/src/libs/eigen/scripts/buildtests.in does not exist.
CMake Error at scripts/CMakeLists.txt:2 (configure_file):
configure_file Problem configuring file
-- Could NOT find CHOLMOD (missing: CHOLMOD_INCLUDES CHOLMOD_LIBRARIES)
-- Could NOT find UMFPACK (missing: UMFPACK_INCLUDES UMFPACK_LIBRARIES)
-- Could NOT find KLU (missing: KLU_INCLUDES KLU_LIBRARIES)
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDES SUPERLU_LIBRARIES SUPERLU_VERSION_OK) (Required is at least version "4.0")
-- A version of Pastix has been found but pastix_nompi.h does not exist in the include directory. Because Eigen tests require a version without MPI, we disable the Pastix backend.
-- ************************************************************
-- *** Eigen's unit tests configuration summary ***
-- ************************************************************
--
-- Build type: Release
-- Build site: humanCron-3.local
-- Build string: emscripten-1-clang++-2.0.34-32bit
-- Enabled backends:
-- Disabled backends: CHOLMOD, UMFPACK, KLU, SuperLU, PaStiX, METIS, SPQR, Qt4 support, Boost.Multiprecision, GoogleHash, Adolc, MPFR C++, fftw, OpenGL,
-- Default order: Column-major
-- Maximal matrix/vector size: 320
-- SSE2: Using architecture defaults
-- SSE3: Using architecture defaults
-- SSSE3: Using architecture defaults
-- SSE4.1: Using architecture defaults
-- SSE4.2: Using architecture defaults
-- AVX: Using architecture defaults
-- AVX2: Using architecture defaults
-- FMA: Using architecture defaults
-- AVX512: Using architecture defaults
-- AVX512DQ: Using architecture defaults
-- Altivec: Using architecture defaults
-- VSX: Using architecture defaults
-- MIPS MSA: Using architecture defaults
-- ARM NEON: Using architecture defaults
-- ARMv8 NEON: Using architecture defaults
-- S390X ZVECTOR: Using architecture defaults
-- C++11: OFF
-- SYCL: OFF
-- CUDA: OFF
-- HIP: OFF
--
CXX: /Users/p.thomas/RealityBLU/emsdk/upstream/emscripten/em++
CXX_FLAGS: -O3 -std=c++17 -std=c++03 -pedantic -Wall -Wextra -Wundef -Wcast-align -Wchar-subscripts -Wnon-virtual-dtor -Wunused-local-typedefs -Wpointer-arith -Wwrite-strings -Wformat-security -Wshorten-64-to-32 -Wenum-conversion -Wc++11-extensions -Wdouble-promotion -Wshadow -Wno-psabi -Wno-variadic-macros -Wno-long-long -fno-check-new -fno-common -fstrict-aliasing -Qunused-arguments -ansi
Sparse lib flags:
-- ************************************************************
--
-- Configured Eigen 3.4.0
--
-- Available targets (use: make TARGET):
-- ---------+--------------------------------------------------------------
-- Target | Description
-- ---------+--------------------------------------------------------------
-- install | Install Eigen. Headers will be installed to:
-- | <CMAKE_INSTALL_PREFIX>/<INCLUDE_INSTALL_DIR>
-- | Using the following values:
-- | CMAKE_INSTALL_PREFIX: /Users/p.thomas/realityBLU/AlvaAR/src/libs/build/eigen
-- | INCLUDE_INSTALL_DIR: include/eigen3
-- | Change the install location of Eigen headers using:
-- | cmake . -DCMAKE_INSTALL_PREFIX=yourprefix
-- | Or:
-- | cmake . -DINCLUDE_INSTALL_DIR=yourdir
-- doc | Generate the API documentation, requires Doxygen & LaTeX
-- check | Build and run the unit-tests. Read this page:
-- | http://eigen.tuxfamily.org/index.php?title=Tests
-- blas | Build BLAS library (not the same thing as Eigen)
-- uninstall| Remove files installed by the install target
-- ---------+--------------------------------------------------------------
--
-- Configuring incomplete, errors occurred!
See also "/Users/p.thomas/realityBLU/AlvaAR/src/libs/eigen/build/CMakeFiles/CMakeOutput.log".
See also "/Users/p.thomas/realityBLU/AlvaAR/src/libs/eigen/build/CMakeFiles/CMakeError.log".
emcmake: error: 'cmake -DCMAKE_CROSSCOMPILING_EMULATOR=/Users/p.thomas/realityBLU/emsdk/node/16.20.0_64bit/bin/node .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 -DCMAKE_TOOLCHAIN_FILE=/Users/p.thomas/RealityBLU/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake "-DCMAKE_CXX_FLAGS=-O3 -std=c++17" "-DCMAKE_C_FLAGS=-O3 -std=c++17" -DCMAKE_INSTALL_PREFIX=/Users/p.thomas/realityBLU/AlvaAR/src/libs/build/eigen/ -DBUILD_SHARED_LIBS=OFF' failed (returned 1)
make: make -j install
make: *** No rule to make target `install'. Stop.
emmake: error: 'make -j install' failed (returned 2)
Step 1/1 -------------------------------- Complete `
Hi Alan,
I have been struggling to succesfully build the dependencies and thus the slam wasm for a while now. I am hoping you can point me in the right direction of the correct emscripten version to use or point out anything else I am missing. The logs below are only for Eigen, but I get similar fails in all dependency builds
I am on:
macOS: Monterey 12.6.7 node: 16.20.0 python: 3.7
and while Ive tried a few emsdk versions, including latest this was the last attempts versioning:
emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 2.0.34 (0d24418f0eac4828f096ee070dae8472d427edaa) clang version 14.0.0 (https://github.com/llvm/llvm-project 3d39612b3dd3f6b67ee63da305d30606abbe7287) Target: wasm32-unknown-emscripten Thread model: posix InstalledDir: /Users/p.thomas/emsdk/upstream/bin
Console out:
CMakeError.log
`