No linux support
It tries to build a bunch of windows related stuff... And after it fails at missing windows headers it fails even more with some internal stuff.
I believe it is possible to make workarounds that will fill in the gaps or at least make it buildable.
Full logs:
max@(master)[~/p/engine-sim/build]$ cmake -DCMAKE_BUILD_TYPE=Release -G"Ninja" ..
-- The C compiler identification is GNU 11.1.0
-- The CXX compiler identification is GNU 11.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Python: /usr/bin/python3.8 (found version "3.8.10") found components: Interpreter
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found SDL2: /usr/lib/x86_64-linux-gnu/libSDL2.so;-lpthread
-- Found SDL2_image: /usr/lib/x86_64-linux-gnu/libSDL2_image.so
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.40") found components: filesystem
-- Found FLEX: /usr/bin/flex (found version "2.6.4")
-- Found BISON: /usr/bin/bison (found version "3.5.1")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/max/p/engine-sim/build
max@(master)[~/p/engine-sim/build]$ cmake --build .
[1/352] Building CXX object CMakeFiles/engine-sim-app.dir/src/main.cpp.o
FAILED: CMakeFiles/engine-sim-app.dir/src/main.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-app.dir/src/main.cpp.o -MF CMakeFiles/engine-sim-app.dir/src/main.cpp.o.d -o CMakeFiles/engine-sim-app.dir/src/main.cpp.o -c ../src/main.cpp
In file included from ../dependencies/submodules/delta-studio/include/yds_core.h:12,
from ../src/../include/delta.h:4,
from ../src/../include/geometry_generator.h:4,
from ../src/../include/engine_sim_application.h:4,
from ../src/main.cpp:1:
../dependencies/submodules/delta-studio/include/yds_windows_audio_wave_file.h:6:10: fatal error: Windows.h: No such file or directory
6 | #include <Windows.h>
| ^~~~~~~~~~~
compilation terminated.
[2/352] Building CXX object CMakeFiles/engine-sim-app.dir/src/engine_sim_application.cpp.o
FAILED: CMakeFiles/engine-sim-app.dir/src/engine_sim_application.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-app.dir/src/engine_sim_application.cpp.o -MF CMakeFiles/engine-sim-app.dir/src/engine_sim_application.cpp.o.d -o CMakeFiles/engine-sim-app.dir/src/engine_sim_application.cpp.o -c ../src/engine_sim_application.cpp
In file included from ../dependencies/submodules/delta-studio/include/yds_core.h:12,
from ../src/../include/delta.h:4,
from ../src/../include/geometry_generator.h:4,
from ../src/../include/engine_sim_application.h:4,
from ../src/engine_sim_application.cpp:1:
../dependencies/submodules/delta-studio/include/yds_windows_audio_wave_file.h:6:10: fatal error: Windows.h: No such file or directory
6 | #include <Windows.h>
| ^~~~~~~~~~~
compilation terminated.
[3/352] Building CXX object CMakeFiles/engine-sim-app.dir/src/geometry_generator.cpp.o
FAILED: CMakeFiles/engine-sim-app.dir/src/geometry_generator.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-app.dir/src/geometry_generator.cpp.o -MF CMakeFiles/engine-sim-app.dir/src/geometry_generator.cpp.o.d -o CMakeFiles/engine-sim-app.dir/src/geometry_generator.cpp.o -c ../src/geometry_generator.cpp
In file included from ../dependencies/submodules/delta-studio/include/yds_core.h:12,
from ../src/../include/delta.h:4,
from ../src/../include/geometry_generator.h:4,
from ../src/geometry_generator.cpp:1:
../dependencies/submodules/delta-studio/include/yds_windows_audio_wave_file.h:6:10: fatal error: Windows.h: No such file or directory
6 | #include <Windows.h>
| ^~~~~~~~~~~
compilation terminated.
[4/352] Building CXX object CMakeFiles/engine-sim-test.dir/test/function_test.cpp.o
FAILED: CMakeFiles/engine-sim-test.dir/test/function_test.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -isystem _deps/googletest-src/googletest/include -isystem _deps/googletest-src/googletest -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-test.dir/test/function_test.cpp.o -MF CMakeFiles/engine-sim-test.dir/test/function_test.cpp.o.d -o CMakeFiles/engine-sim-test.dir/test/function_test.cpp.o -c ../test/function_test.cpp
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:20:13: error: ‘__forceinline’ does not name a type
20 | __forceinline void set(int column, int row, double value) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:27:13: error: ‘__forceinline’ does not name a type
27 | __forceinline void add(int column, int row, double value) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:34:13: error: ‘__forceinline’ does not name a type
34 | __forceinline double get(int column, int row) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:63:13: error: ‘__forceinline’ does not name a type
63 | __forceinline void fastRowSwap(int a, int b) {
| ^~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:31:13: error: ‘__forceinline’ does not name a type
31 | __forceinline int getConstraintCount() const { return m_constraintCount; }
| ^~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:264:13: error: ‘__forceinline’ does not name a type
264 | __forceinline int getWidth() const { return m_width; }
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:265:13: error: ‘__forceinline’ does not name a type
265 | __forceinline int getHeight() const { return m_height; }
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::expand(atg_scs::Matrix*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:80:44: error: no matching function for call to ‘atg_scs::Matrix::set(int, int&, double&)’
80 | matrix->set(block * T_Stride + k, i, m_matrix[i][j * T_Stride + k]);
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::expandTransposed(atg_scs::Matrix*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:96:44: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int, double&)’
96 | matrix->set(i, block * T_Stride + k, m_matrix[i][j * T_Stride + k]);
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::multiplyTranspose(const atg_scs::SparseMatrix<T_Stride, T_Entries>&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:161:36: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int&, double&)’
161 | target->set(j, i, dot);
| ~~~~~~~~~~~^~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::transposeMultiplyVector(atg_scs::Matrix&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:184:75: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
184 | target->add(0, j, m_matrix[i][offset + l] * b.get(0, i));
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::multiply(atg_scs::Matrix&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:207:66: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
207 | v += m_matrix[i][offset + l] * b.get(j, block * T_Stride + l);
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:211:36: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int&, double&)’
211 | target->set(j, i, v);
| ~~~~~~~~~~~^~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::rightScale(atg_scs::Matrix&, atg_scs::SparseMatrix<T_Stride>*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:234:39: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
234 | scale.get(0, index * T_Stride + k) * m_matrix[i][j * T_Stride + k]);
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::leftScale(atg_scs::Matrix&, atg_scs::SparseMatrix<T_Stride>*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:258:39: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
258 | scale.get(0, i) * m_matrix[i][j * T_Stride + k]);
| ^~~
| set
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:12,
from ../test/../include/scs.h:4,
from ../test/../include/gaussian_filter.h:4,
from ../test/../include/function.h:4,
from ../test/function_test.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/gaussian_elimination_sle_solver.h: At global scope:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/gaussian_elimination_sle_solver.h:19:20: error: ‘__forceinline’ does not name a type
19 | static __forceinline double fastAbs(double v) {
| ^~~~~~~~~~~~~
[5/352] Building CXX object CMakeFiles/engine-sim-test.dir/test/synthesizer_tests.cpp.o
FAILED: CMakeFiles/engine-sim-test.dir/test/synthesizer_tests.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -isystem _deps/googletest-src/googletest/include -isystem _deps/googletest-src/googletest -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-test.dir/test/synthesizer_tests.cpp.o -MF CMakeFiles/engine-sim-test.dir/test/synthesizer_tests.cpp.o.d -o CMakeFiles/engine-sim-test.dir/test/synthesizer_tests.cpp.o -c ../test/synthesizer_tests.cpp
In file included from ../test/../include/synthesizer.h:7,
from ../test/synthesizer_tests.cpp:3:
../test/../include/low_pass_filter.h:15:9: error: ‘__forceinline’ does not name a type
15 | __forceinline double fast_f(double sample) {
| ^~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:20:13: error: ‘__forceinline’ does not name a type
20 | __forceinline void set(int column, int row, double value) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:27:13: error: ‘__forceinline’ does not name a type
27 | __forceinline void add(int column, int row, double value) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:34:13: error: ‘__forceinline’ does not name a type
34 | __forceinline double get(int column, int row) {
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:63:13: error: ‘__forceinline’ does not name a type
63 | __forceinline void fastRowSwap(int a, int b) {
| ^~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:31:13: error: ‘__forceinline’ does not name a type
31 | __forceinline int getConstraintCount() const { return m_constraintCount; }
| ^~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:264:13: error: ‘__forceinline’ does not name a type
264 | __forceinline int getWidth() const { return m_width; }
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:265:13: error: ‘__forceinline’ does not name a type
265 | __forceinline int getHeight() const { return m_height; }
| ^~~~~~~~~~~~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::expand(atg_scs::Matrix*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:80:44: error: no matching function for call to ‘atg_scs::Matrix::set(int, int&, double&)’
80 | matrix->set(block * T_Stride + k, i, m_matrix[i][j * T_Stride + k]);
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::expandTransposed(atg_scs::Matrix*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:96:44: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int, double&)’
96 | matrix->set(i, block * T_Stride + k, m_matrix[i][j * T_Stride + k]);
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::multiplyTranspose(const atg_scs::SparseMatrix<T_Stride, T_Entries>&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:161:36: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int&, double&)’
161 | target->set(j, i, dot);
| ~~~~~~~~~~~^~~~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::transposeMultiplyVector(atg_scs::Matrix&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:184:75: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
184 | target->add(0, j, m_matrix[i][offset + l] * b.get(0, i));
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::multiply(atg_scs::Matrix&, atg_scs::Matrix*) const’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:207:66: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
207 | v += m_matrix[i][offset + l] * b.get(j, block * T_Stride + l);
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:211:36: error: no matching function for call to ‘atg_scs::Matrix::set(int&, int&, double&)’
211 | target->set(j, i, v);
| ~~~~~~~~~~~^~~~~~~~~
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/constraint.h:6,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:5,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate: ‘void atg_scs::Matrix::set(const double*)’
18 | void set(const double *data);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:18:18: note: candidate expects 1 argument, 3 provided
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate: ‘void atg_scs::Matrix::set(atg_scs::Matrix*)’
41 | void set(Matrix *reference);
| ^~~
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/matrix.h:41:18: note: candidate expects 1 argument, 3 provided
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/rigid_body_system.h:8,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/generic_rigid_body_system.h:4,
from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:4,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::rightScale(atg_scs::Matrix&, atg_scs::SparseMatrix<T_Stride>*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:234:39: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
234 | scale.get(0, index * T_Stride + k) * m_matrix[i][j * T_Stride + k]);
| ^~~
| set
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h: In member function ‘void atg_scs::SparseMatrix<T_Stride, T_Entries>::leftScale(atg_scs::Matrix&, atg_scs::SparseMatrix<T_Stride>*)’:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/sparse_matrix.h:258:39: error: ‘class atg_scs::Matrix’ has no member named ‘get’; did you mean ‘set’?
258 | scale.get(0, i) * m_matrix[i][j * T_Stride + k]);
| ^~~
| set
In file included from ../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/scs.h:12,
from ../test/../include/scs.h:4,
from ../test/../include/part.h:4,
from ../test/../include/ring_buffer.h:4,
from ../test/../include/synthesizer.h:8,
from ../test/synthesizer_tests.cpp:3:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/gaussian_elimination_sle_solver.h: At global scope:
../test/../include/../dependencies/submodules/simple-2d-constraint-solver/include/gaussian_elimination_sle_solver.h:19:20: error: ‘__forceinline’ does not name a type
19 | static __forceinline double fastAbs(double v) {
| ^~~~~~~~~~~~~
../test/synthesizer_tests.cpp:7:22: error: ‘chrono_literals’ is not a namespace-name
7 | using namespace std::chrono_literals;
| ^~~~~~~~~~~~~~~
[6/352] Building CXX object CMakeFiles/engine-sim-test.dir/test/gas_system_tests.cpp.o
FAILED: CMakeFiles/engine-sim-test.dir/test/gas_system_tests.cpp.o
/usr/bin/c++ -DBOOST_ALL_NO_LIB -I../dependencies/submodules -isystem _deps/googletest-src/googletest/include -isystem _deps/googletest-src/googletest -O3 -DNDEBUG -std=gnu++11 -MD -MT CMakeFiles/engine-sim-test.dir/test/gas_system_tests.cpp.o -MF CMakeFiles/engine-sim-test.dir/test/gas_system_tests.cpp.o.d -o CMakeFiles/engine-sim-test.dir/test/gas_system_tests.cpp.o -c ../test/gas_system_tests.cpp
In file included from ../test/gas_system_tests.cpp:3:
../test/../include/gas_system.h:40:73: error: default member initializer for ‘GasSystem::Mix::p_fuel’ required before the end of its enclosing class
40 | void initialize(double P, double V, double T, const Mix &mix = {}, int degreesOfFreedom = 5);
| ^
../test/../include/gas_system.h:13:27: note: defined here
13 | double p_fuel = 0.0;
| ^~~~~~
../test/../include/gas_system.h:40:73: error: default member initializer for ‘GasSystem::Mix::p_inert’ required before the end of its enclosing class
40 | void initialize(double P, double V, double T, const Mix &mix = {}, int degreesOfFreedom = 5);
| ^
../test/../include/gas_system.h:14:28: note: defined here
14 | double p_inert = 1.0;
| ^~~~~~
../test/../include/gas_system.h:40:73: error: default member initializer for ‘GasSystem::Mix::p_o2’ required before the end of its enclosing class
40 | void initialize(double P, double V, double T, const Mix &mix = {}, int degreesOfFreedom = 5);
| ^
../test/../include/gas_system.h:15:25: note: defined here
15 | double p_o2 = 0.0;
| ^~~~~~
ninja: build stopped: subcommand failed.
the README says "Note: this project currently only builds on Windows!"
If you feel this is an issue, don't phrase the issue title as a question, and instead phrase it as a statement.
The author can work towards resolution of the issue, or close the issue as a "WONTFIX" if they choose to.
Woops, my blindness here, sorry!
I would also like to see Linux supported in the future.
I've scanned though quickly, and haven't found anything dependant on windows yet.
However, lots of stuff dependant on MSVC.
You can run the build from releases with wine as someone in the discord pointed out but Linux support probably won't be supported.
I've scanned though quickly, and haven't found anything dependant on windows yet.
However, lots of stuff dependant on MSVC.
It's mostly just SDL2 and C++, but the build is MSVC. You could adapt it to GCC or something.
You may have better luck supporting Clang on both Windows and Linux, than you will supporting multiple compilers. The existing cmake support should make that much easier, too.
Current porting status:
- piranha - Merged: https://github.com/ange-yaghi/piranha/pull/62
- delta-studio - WIP and untested: https://github.com/ange-yaghi/delta-studio/pull/34
- other dependencies - no changes needed?
- engine-sim - I have some local uncommitted changes, doesn't seem to be that hard but needs delta-studio first
would wine work for this?
would wine work for this?
WINE works for this.
The existing windows build works under wine. If you just want to run engine-sim, just head over to the release page and download that.
But for actually building engine-sim on Linux, wine doesn't help much with porting. The codebase is already very portable, because it was designed to be portable. The biggest issue is that because it was only ever built with one compiler (MSVC), a bunch of errors crept in. The secondary issue is that non-windows backends have to be added for windowing, input and sound. The codebase is already very modular, but for those areas, only one backend exists. Fortunately adding a new backend is easy.
What about macOS support? Is this possible?
SDL2 works on Mac so I don't see why this would not work on Mac with a bit of work.
If this ever comes to fruition, for the Linux builds, to remove some of the distribution work, please do consider releasing as Flatpak on Flathub (basically a Linux app store) or as an AppImage (basically a portable binary. These options are distro-agnostic so they work on just about every modern Linux distribution out of the box!
The newest release doesn't work with wine or proton. It just shows a black screen and plays that loud startup noise on a loop.
I tried to run on a Windows 11 ARM on an M1 MacBook. Got the following errors:
The code execution cannot proceed because d3dx11.dll was not found. The code execution cannot proceed because vulkan-1.dll was not found. The code execution cannot proceed because MSVCP140.dll was not found. The code execution cannot proceed because VCRUNTIME140.dll was not found.
The newest release doesn't work with wine or proton. It just shows a black screen and plays that loud startup noise on a loop.
whats your setup? bc it works for me in lutris using "lutris-7.2-2-x86_64" wine and all other stuff default edit: new release was build_1_4a
The newest release doesn't work with wine or proton. It just shows a black screen and plays that loud startup noise on a loop.
The newest release gives black screen also on Steam Deck. I had to set Proton to 6.3 to make it work.
The newest release doesn't work with wine or proton. It just shows a black screen and plays that loud startup noise on a loop.
whats your setup? bc it works for me in lutris using "lutris-7.2-2-x86_64" wine and all other stuff default edit: new release was build_1_4a
I was using wine version: 7.14 and proton ge version 7.29 but everything works now in build_0_1_5a
I was just about to post an issue of the lacking linux support when I found this. I read that CLang works, but that's not enough. I might try fixing the gcc build later.
would wine work for this?
WINE works for this.
idk gives me following error:
002c:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home<path>\engine-sim-build_0_1_9a\\bin\\engine-sim-app.exe" failed, status c0000135
would wine work for this?
WINE works for this.
idk gives me following error:
002c:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home<path>\engine-sim-build_0_1_9a\\bin\\engine-sim-app.exe" failed, status c0000135
Try using wine-ge/proton-ge, just worked for me
would wine work for this?
WINE works for this.
idk gives me following error:
002c:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home<path>\engine-sim-build_0_1_9a\\bin\\engine-sim-app.exe" failed, status c0000135Try using wine-ge/proton-ge, just worked for me
How did you get wine-ge/proton-ge on mac? I thought that was only for windows.
What all did you install with wine? With using wine the engine sim immediately crashes.
Got a lil further using vmware fusion. Also had the missing dlls issues, but i then installed the libraries according to missing-dll-files faq but the d3d... driver was still missing. i tried the version on dll-files.com (???) and threw it into my system32 folder. Now the app opens but immediately crashes w/o anything in the error.log. I'm currently trying to install everything required to build the app from source but I am not a windows person and oooh boy is this a lot of moving parts 🙃
Got a lil further using vmware fusion. Also had the missing dlls issues, but i then installed the libraries according to missing-dll-files faq but the d3d... driver was still missing. i tried the version on dll-files.com (???) and threw it into my system32 folder. Now the app opens but immediately crashes w/o anything in the error.log. I'm currently trying to install everything required to build the app from source but I am not a windows person and oooh boy is this a lot of moving parts upside_down_face
You don't need a VM for ES to work under Linux though. Only Wine.
ack. sorry the quote didn't seem to populate properly. i was working on an M1 Mac solution, not Linux. Had tried a bunch of wine type solutions (including Crossover, wine-crossover, etc..). Ended up just spending the day tweaking some code from the current Metal build floating around and got it running natively (albeit with the gonzo oversized engine issue): https://github.com/boxofbox/engine-sim-m1
ack. sorry the quote didn't seem to populate properly. i was working on an M1 Mac solution, not Linux. Had tried a bunch of wine type solutions (including Crossover, wine-crossover, etc..). Ended up just spending the day tweaking some code from the current Metal build floating around and got it running natively (albeit with the gonzo oversized engine issue): https://github.com/boxofbox/engine-sim-m1
Awesome work! But unfortunately it's crashing on launch on my system :(
I did notice there were about 12 warnings ending with while building:
was built for newer macOS version (13.0) than being linked (12.3)
(I'm running MacOS Ventura 13.0)
Here's the terminal output when I try to launch it:
attached event handler
init metal device
create metal swapchain, name: Apple M1 Max, type: PN3MTL6DeviceE
init geometry
init renderer
init console
init shaders
Metal shaders
yds error 52
yds error 52
yds error 52
yds error 52
zsh: segmentation fault /Users/benjamin/GitHub/EngineSim/build/engine-sim-app
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
was built for newer macOS version (13.0) than being linked (12.3) wow strange i'm running 13.0.1 clean install at 13. also get a ton of warnings, but it still runs ok. Was yours a clean install or an upgrade? It could be one of the homebrew libraries being linked needs to be rebuilt on the new os? e.g., try
brew list | xargs brew reinstall
ack. sorry the quote didn't seem to populate properly. i was working on an M1 Mac solution, not Linux. Had tried a bunch of wine type solutions (including Crossover, wine-crossover, etc..). Ended up just spending the day tweaking some code from the current Metal build floating around and got it running natively (albeit with the gonzo oversized engine issue): https://github.com/boxofbox/engine-sim-m1
Awesome work! But unfortunately it's crashing on launch on my system :( I did notice there were about 12 warnings ending with while building:
was built for newer macOS version (13.0) than being linked (12.3)(I'm running MacOS Ventura 13.0)Here's the terminal output when I try to launch it:
attached event handler init metal device create metal swapchain, name: Apple M1 Max, type: PN3MTL6DeviceE init geometry init renderer init console init shaders Metal shaders yds error 52 yds error 52 yds error 52 yds error 52 zsh: segmentation fault /Users/benjamin/GitHub/EngineSim/build/engine-sim-app Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed]
the other thing to note, is i also get that error if i try to run it by clicking on the app. if you instead run it in the terminal when in the build folder with ./engine-sim-app does it also seg fault?
ack. sorry the quote didn't seem to populate properly. i was working on an M1 Mac solution, not Linux. Had tried a bunch of wine type solutions (including Crossover, wine-crossover, etc..). Ended up just spending the day tweaking some code from the current Metal build floating around and got it running natively (albeit with the gonzo oversized engine issue): https://github.com/boxofbox/engine-sim-m1
Awesome work! But unfortunately it's crashing on launch on my system :( I did notice there were about 12 warnings ending with while building:
was built for newer macOS version (13.0) than being linked (12.3)(I'm running MacOS Ventura 13.0) Here's the terminal output when I try to launch it:attached event handler init metal device create metal swapchain, name: Apple M1 Max, type: PN3MTL6DeviceE init geometry init renderer init console init shaders Metal shaders yds error 52 yds error 52 yds error 52 yds error 52 zsh: segmentation fault /Users/benjamin/GitHub/EngineSim/build/engine-sim-app Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed]the other thing to note, is i also get that error if i try to run it by clicking on the app. if you instead run it in the terminal when in the build folder with
./engine-sim-appdoes it also seg fault?
That was it! Didn't know that could make a difference. Starting it from terminal works. Great work & Thanks!