Hi y'all!
I'm currently constructing an image that builds Project Chrono to act as a
dev container. I've followed y'all's build script closely, except now I'm
just using Ninja instead of Ninja Multi-Platform generator. Multi-platform
has some issues building Cuda. However, the build seems to fail due to
segmentation faults.
Here is the relevant build step in the Dockerfile. The generation of the
Makefile seems to work fine.
## Build
RUN cmake -G "Ninja" -B build -S . \
-DCMAKE_INSTALL_PREFIX:PATH=./install \
-DENABLE_MODULE_IRRLICHT:BOOL=ON \
-DENABLE_MODULE_VSG:BOOL=OFF \
# -DENABLE_MODULE_OPENGL:BOOL=ON \
-DENABLE_MODULE_VEHICLE:BOOL=ON \
-DIOMP5_LIBRARY=${IOMP5_DIR} \
-DENABLE_MODULE_POSTPROCESS:BOOL=ON \
-DENABLE_MODULE_MULTICORE:BOOL=ON \
-DENABLE_MODULE_FSI:BOOL=ON \
-DENABLE_MODULE_GPU:BOOL=ON \
-DENABLE_MODULE_DISTRIBUTED:BOOL=ON \
-DENABLE_MODULE_PARDISO_MKL:BOOL=OFF \
-DENABLE_MODULE_CASCADE:BOOL=OFF \
-DENABLE_MODULE_COSIMULATION:BOOL=ON \
-DENABLE_MODULE_SENSOR:BOOL=ON \
# -DENABLE_MODULE_MODAL:BOOL=ON \
-DENABLE_MODULE_MATLAB:BOOL=OFF \
-DENABLE_MODULE_CSHARP:BOOL=OFF \
# -DENABLE_MODULE_PYTHON:BOOL=ON \
-DENABLE_MODULE_SYNCHRONO:BOOL=OFF \
-DBUILD_BENCHMARKING:BOOL=OFF \
-DBUILD_TESTING:BOOL=OFF \
-DENABLE_OPENCRG:BOOL=ON \
-DUSE_CUDA_NVRTC:BOOL=ON \
-DUSE_FAST_DDS:BOOL=ON \
-DOptiX_INCLUDE:PATH=./optix/include \
-DSWIG_PATH:PATH=/usr/local/swig \
-DCMAKE_BUILD_TYPE="Release" \
-DCUDA_ARCH_NAME=All \
-DENABLE_CUDA_FIRST_CLASS_LANGUAGE=ON \
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda
RUN cmake --build build --config Release && \
cd build && \
ninja install
21.38 FAILED:
src/chrono/CMakeFiles/ChronoEngine.dir/fea/ChNodeFEAxyzDD.cpp.o
21.38 /usr/bin/c++ -DBP_USE_FIXEDPOINT_INT_32 -DBT_THREADSAFE
-DBT_USE_OPENMP -D
CH_API_COMPILE -DCH_IGNORE_DEPRECATED -DChronoEngine_EXPORTS -I/chrono/src
-I/ch
rono/build -I/usr/include/eigen3 -I/chrono/src/chrono
-I/chrono/src/chrono/colli
sion/bullet -I/chrono/src/chrono/collision/gimpact
-I/chrono/src/chrono/../chron
o_thirdparty/HACD -I/chrono/src/chrono/../chrono_thirdparty/HACDv2 -pthread
-fop
enmp -pthread -fopenmp -march=native -O3 -DNDEBUG -pthread -fopenmp
-march=nat
ive -DNDEBUG -std=gnu++17 -fPIC -Wint-in-bool-context -Wno-sign-compare
-Wno-reo
rder -Wno-unused-function -Wno-unused-parameter -Wno-unused-result -MD -MT
src/c
hrono/CMakeFiles/ChronoEngine.dir/fea/ChNodeFEAxyzDD.cpp.o -MF
src/chrono/CMakeF
iles/ChronoEngine.dir/fea/ChNodeFEAxyzDD.cpp.o.d -o
src/chrono/CMakeFiles/Chrono
Engine.dir/fea/ChNodeFEAxyzDD.cpp.o -c
/chrono/src/chrono/fea/ChNodeFEAxyzDD.cpp
21.38 In file included from /usr/include/c++/9/unordered_set:46,
21.38 from /chrono/src/chrono/serialization/ChArchive.h:22,
21.38 from /chrono/src/chrono/core/ChMatrix.h:21,
21.38 from /chrono/src/chrono/solver/ChVariables.h:19,
21.38 from
/chrono/src/chrono/solver/ChVariablesGenericDiagonal
Mass.h:18,
21.38 from /chrono/src/chrono/fea/ChNodeFEAxyzDD.h:18,
21.38 from /chrono/src/chrono/fea/ChNodeFEAxyzDD.cpp:15:
21.38 /usr/include/c++/9/bits/hashtable.h:711:36: internal compiler error:
Segme
ntation fault
21.38 711 | __node_type* __n, size_type __n_elt = 1);
21.38 |
Any idea what could be the issue here? I pull directly from Chrono's Github
and the generator doesn't specify any issues. Can specify the rest of the
Dockerfile if needed, but it's pretty plain ubuntu 20.04 image installing
the required dependencies for the modules I need.
--
You received this message because you are subscribed to the Google Groups
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/projectchrono/6ad82567-a28f-4446-9483-92ff1408c882n%40googlegroups.com.