I tried the game on an old laptop running debian bullseye, and got the same issue so I built it on that laptop and it works for me, so I uploaded it as a third download option on this game’s page as “TrialsOfThePharaohLinuxOpenGLCompatability.7z” This old laptop doesn’t have a discrete gpu, so only supports opengl, so this version is OpenGL only, but it should hopefully work!
Viewing post in Trials of The Pharaoh jam comments
Well, that one is starting, but then runs into issues about the sound... After a lot of fiddling around with "qjackctl" and adding a plugin to pulseaudio I managed to get jackd running, but still no dice.
[...] ./TrialsOfThePharaoh-OpenGL-Build ALSA lib pcm_dsnoop.c:641:(snd_pcm_dsnoop_open) unable to open slave ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side Cannot lock down 82280346 byte memory area (Cannot allocate memory) Cannot lock down 82280346 byte memory area (Cannot allocate memory) ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave Cannot lock down 82280346 byte memory area (Cannot allocate memory)
And that jackd actually starts doesn't necessarily mean it works. From jackd's side there is onle ALSS but no pulseaudio
Installing the package for the plugin seemed to make a difference, though.
I've only got "libasound2-dev"... that should be working, too...
ii libasound2-dev:amd64 1.2.2-2.1ubuntu2.5 amd64 shared library for ALSA applications -- development files ii libassimp-dev:amd64 5.0.1~ds0-1build1 amd64 3D model import library (development) ii libfreetype-dev:amd64 2.10.1-2ubuntu0.1 amd64 FreeType 2 font engine, development files ii libglfw3-dev:amd64 3.3.2-1 amd64 portable library for OpenGL, window and input (development files) ii libglm-dev 0.9.9.7+ds-1 all C++ library for OpenGL GLSL type-based mathematics ii libsndfile1-dev 1.0.28-7ubuntu0.1 amd64 Development files for libsndfile; a library for reading/writing audio files
of the other listed dependencies in the readme I was missing spirv-tools
build-scripts are useful!
Now...
time bash -x resources/buildscripts/linux/releaseVulkan.sh + cd build + cmake .. '-GNinja Multi-Config' -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -DGFX_ENV_VULKAN=1 CMake Error: Could not create named generator Ninja Multi-Config [...] + cmake --build . --config Release ninja: error: loading 'build.ninja': No such file or directory
Hm. I left out the "Multi-Config" part and that seemed to help. Only now it went into the wrong folder continuing because I made a copy of the script to change at a different place. that looks a bit more promising now.
But the script fails to navigate into the correct directory and when it calls cmake, the build config is missing... I should be able to do each step manually though.
~/jam2022/NoamZeise/TrailsOfThePharaoh/build$ cmake --build . --config Release [1/14] Building CXX object CMakeFiles/TrialsOfThePharaoh.dir/src/app.cpp.o FAILED: CMakeFiles/TrialsOfThePharaoh.dir/src/app.cpp.oah...
/usr/bin/c++ -DGFX_ENV_VULKAN -DVK_USE_PLATFORM_XLIB_KHR -I../include -I/usr/include/freetype2 -pthread -std=gnu++14 -MD -MT CMakeFiles/TrialsOfThePharaoh.dir/src/app.cpp.o -MF CMakeFiles/TrialsOfThePharaoh.dir/src/app.cpp.o.d -o CMakeFiles/TrialsOfThePharaoh.dir/src/app.cpp.o -c ../src/app.cpp In file included from ../src/app.h:25, from ../src/app.cpp:1: ../include/audio.h:5:10: fatal error: portaudio.h: No such file or directory 5 | #include <portaudio.h> | ^~~~~~~~~~~~~ compilation terminated.
installing "portaudio19-dev" might fix it.
meh...
The following additional packages will be installed: jackd1 jackd1-firewire libjack-dev libjack0 libzita-alsa-pcmi0 libzita-resampler1 Suggested packages: jack-tools meterbridge portaudio19-doc The following packages will be REMOVED: jackd2 jackd2-firewire libjack-jackd2-0 The following NEW packages will be installed: jackd1 jackd1-firewire libjack-dev libjack0 libzita-alsa-pcmi0 libzita-resampler1 portaudio19-dev
TrailsOfThePharaoh/build$ cmake --build . --config Release [5/22] Building CXX object CMakeFiles/TrialsOfThePharaoh.dir/src/vulkan-render/vkinit.cpp.o FAILED: CMakeFiles/TrialsOfThePharaoh.dir/src/vulkan-render/vkinit.cpp.o
/usr/bin/c++ -DGFX_ENV_VULKAN -DVK_USE_PLATFORM_XLIB_KHR -I../include -I/usr/include/freetype2 -pthread -std=gnu++14 -MD -MT CMakeFiles/TrialsOfThePharaoh.dir/src/vulkan-render/vkinit.cpp.o -MF CMakeFiles/TrialsOfThePharaoh.dir/src/vulkan-render/vkinit.cpp.o.d -o CMakeFiles/TrialsOfThePharaoh.dir/src/vulkan-render/vkinit.cpp.o -c ../src/vulkan-render/vkinit.cpp In file included from ../src/vulkan-render/vkinit.cpp:1: ../src/vulkan-render/vkinit.h:31:2: error: ‘VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT’ was not declared in this scope 31 | VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~