Difficulty in building Game Music Library for AlienBob's ffmpeg slackbuild
by Byron from LinuxQuestions.org on (#6FXMM)
I'm trying to build ffmpeg 5.1.3 using AlienBob's handy slackbuild script, and am having some trouble building the game music emulator library. The script runs perfectly fine up until GME and then it says it couldn't build it. I've never really used cmake before, but I suspect the problem may lie in the version I'm using. Could someone confirm whether it's demanding I use an older/newer version of cmake for this? Or what else the problem might be?
A relevant extract from the CMakeLists.txt found in the build env for gme leads me to believe I need a version under 2.7:
Code:# 2.6+ always assumes FATAL_ERROR, but 2.4 and below don't.
# Of course, 2.4 might work, in which case you're welcome to drop
# down the requirement, but I can't test that.
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)but then when I try running the cmake command copied from AlienBob's slackbuild in the build env itself, I get this warning:
Code:CMake Deprecation Warning at CMakeLists.txt:12 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
CMake Error at CMakeLists.txt:72 (if):
if given arguments:
"(" "VERSION_GREATER" "4.1" ")" "OR" "(" "VERSION_EQUAL" "4.1" ")"
Unknown arguments specifiedWhich, in the larger context of its original stanza:
Code: # gcc <4.1 had poor support for symbol visibility
if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
set (ENABLE_VISIBILITY ON)
add_definitions (-DLIBGME_VISIBILITY)
# GCC >= 4.2 also correctly supports making inline members have hidden
# visibility by default.
if ((${_gcc_version} VERSION_GREATER "4.2") OR (${_gcc_version} VERSION_EQUAL "4.2"))
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden")
endif()
endif()
endif() # test visibilityleads me to believe that versions greater than 2.6 should work.
I'm currently using cmake 3.21.4 and just updated and upgraded my system yesterday. I'm on 15.0 stable. Was this package built with slackware -current in mind maybe?
I know that I could just omit gme from this build and it would likely be okay, but I actually have a few video game soundtracks I'd like to listen to, and I might like to convert them someday.
A relevant extract from the CMakeLists.txt found in the build env for gme leads me to believe I need a version under 2.7:
Code:# 2.6+ always assumes FATAL_ERROR, but 2.4 and below don't.
# Of course, 2.4 might work, in which case you're welcome to drop
# down the requirement, but I can't test that.
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)but then when I try running the cmake command copied from AlienBob's slackbuild in the build env itself, I get this warning:
Code:CMake Deprecation Warning at CMakeLists.txt:12 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
CMake Error at CMakeLists.txt:72 (if):
if given arguments:
"(" "VERSION_GREATER" "4.1" ")" "OR" "(" "VERSION_EQUAL" "4.1" ")"
Unknown arguments specifiedWhich, in the larger context of its original stanza:
Code: # gcc <4.1 had poor support for symbol visibility
if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
set (ENABLE_VISIBILITY ON)
add_definitions (-DLIBGME_VISIBILITY)
# GCC >= 4.2 also correctly supports making inline members have hidden
# visibility by default.
if ((${_gcc_version} VERSION_GREATER "4.2") OR (${_gcc_version} VERSION_EQUAL "4.2"))
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden")
endif()
endif()
endif() # test visibilityleads me to believe that versions greater than 2.6 should work.
I'm currently using cmake 3.21.4 and just updated and upgraded my system yesterday. I'm on 15.0 stable. Was this package built with slackware -current in mind maybe?
I know that I could just omit gme from this build and it would likely be okay, but I actually have a few video game soundtracks I'd like to listen to, and I might like to convert them someday.