ValveSoftware / ValveSoftware/steam-runtime
cmake in sniper fails to locate libogg and libvorbis
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 1.5k
- Forks
- 97
- PR merge metrics
- No merged PRs in 30d
Description
Your system information
- Steam Runtime Version: Sniper
- Distribution: Using the image
registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest
Please describe your issue in as much detail as possible:
We are building our game in the Sniper container per the documentation at GitLab. We have Cmake find several packages, for example:
find_package(ZLIB REQUIRED GLOBAL)
However, this does not work for ogg or vorbis:
find_package(Ogg REQUIRED GLOBAL)
CMake Error at extern/CMakeLists.txt:38 (find_package):
By not providing "FindOgg.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Ogg", but
CMake did not find one.
Could not find a package configuration file provided by "Ogg" with any of
the following names:
OggConfig.cmake
ogg-config.cmake
Add the installation prefix of "Ogg" to CMAKE_PREFIX_PATH or set "Ogg_DIR"
to a directory containing one of the above files. If "Ogg" provides a
separate development package or SDK, be sure it has been installed.
find_package(Vorbis REQUIRED GLOBAL)
Could not find a package configuration file provided by "Vorbis" with any
of the following names:
VorbisConfig.cmake
vorbis-config.cmake
Add the installation prefix of "Vorbis" to CMAKE_PREFIX_PATH or set
"Vorbis_DIR" to a directory containing one of the above files. If "Vorbis"
provides a separate development package or SDK, be sure it has been
installed.
When browsing the Sniper image, we see that vorbis is missing as well.
find /usr -iname "*sdl*cmake*" -o -iname "*zlib*cmake*" -o -iname "*freetype*cmake*" -o -iname "*vorbis*cmake*" -o -iname "*openal*cmake*" -o -iname "*curl*cmake*" -o -iname "*stb*cmake*"
/usr/lib/i386-linux-gnu/cmake/SDL2/sdl2-config-version.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2/sdl2-config.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_image/sdl2_image-config-version.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_image/sdl2_image-config.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_mixer/sdl2_mixer-config.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_ttf/sdl2_ttf-config-version.cmake
/usr/lib/i386-linux-gnu/cmake/SDL2_ttf/sdl2_ttf-config.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2/sdl2-config-version.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2/sdl2-config.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_image/sdl2_image-config-version.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_image/sdl2_image-config.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_mixer/sdl2_mixer-config.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_ttf/sdl2_ttf-config-version.cmake
/usr/lib/x86_64-linux-gnu/cmake/SDL2_ttf/sdl2_ttf-config.cmake
/usr/share/cmake-3.25/Modules/FindCURL.cmake
/usr/share/cmake-3.25/Modules/FindFreetype.cmake
/usr/share/cmake-3.25/Modules/FindSDL_gfx.cmake
/usr/share/cmake-3.25/Modules/FindSDL_image.cmake
/usr/share/cmake-3.25/Modules/FindSDL_net.cmake
/usr/share/cmake-3.25/Modules/FindOpenAL.cmake
/usr/share/cmake-3.25/Modules/FindSDL.cmake
/usr/share/cmake-3.25/Modules/FindSDL_mixer.cmake
/usr/share/cmake-3.25/Modules/FindSDL_sound.cmake
/usr/share/cmake-3.25/Modules/FindSDL_ttf.cmake
/usr/share/cmake-3.25/Modules/FindZLIB.cmake
/usr/share/cmake-3.25/Modules/TestBigEndian.cmake
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at extern/CMakeLists.txt:38 and reproduce the Ogg and Vorbis package lookup in the Sniper SDK image. Inspect the image contents and the documented Sniper build setup to determine how these dependencies are exposed. Done means CMake can locate both Ogg and Vorbis in the Sniper container, with the relevant build check passing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100