Pi5 germb compile failed due to python2-dev missing
-
Pi5, arm64
since python2-dev not being present on newer systems scriptmodule failsOriginal/current scriptmodule is as per below and based on older version v0.8.6
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="gemrb" rp_module_desc="gemrb - open-source implementation of Infinity Engine" rp_module_licence="GPL2 https://raw.githubusercontent.com/gemrb/gemrb/master/COPYING" rp_module_repo="git https://github.com/gemrb/gemrb.git v0.8.6" rp_module_section="exp" rp_module_flags="!mali dispmanx" function depends_gemrb() { getDepends python2-dev libopenal-dev cmake libpng-dev libfreetype6-dev libsdl2-dev libvorbis-dev libvlc-dev libvlccore-dev } function sources_gemrb() { gitPullOrClone } function build_gemrb() { mkdir -p build cd build make clean cmake .. -DCMAKE_INSTALL_PREFIX="$md_inst" -DCMAKE_BUILD_TYPE=Release -DFREETYPE_INCLUDE_DIRS=/usr/include/freetype2/ -DSDL_BACKEND=SDL2 -DUSE_SDLMIXER=OFF make md_ret_require="$md_build/build/gemrb/gemrb" } function install_gemrb() { cd build make install } function configure_gemrb() { mkRomDir "ports/baldurs1" mkRomDir "ports/baldurs2" mkRomDir "ports/icewind1" mkRomDir "ports/icewind2" mkRomDir "ports/planescape" mkRomDir "ports/cache" addPort "$md_id" "baldursgate1" "Baldurs Gate 1" "$md_inst/bin/gemrb -C $md_conf_root/baldursgate1/GemRB.cfg" addPort "$md_id" "baldursgate2" "Baldurs Gate 2" "$md_inst/bin/gemrb -C $md_conf_root/baldursgate2/GemRB.cfg" addPort "$md_id" "icewind1" "Icewind Dale 1" "$md_inst/bin/gemrb -C $md_conf_root/icewind1/GemRB.cfg" addPort "$md_id" "icewind2" "Icewind Dale 2" "$md_inst/bin/gemrb -C $md_conf_root/icewind2/GemRB.cfg" addPort "$md_id" "planescape" "Planescape Torment" "$md_inst/bin/gemrb -C $md_conf_root/planescape/GemRB.cfg" #create Baldurs Gate 1 configuration cat > "$md_conf_root/baldursgate1/GemRB.cfg" << _EOF_ GameType=bg1 GameName=Baldurs Gate 1 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/baldurs1/ CD1=$romdir/ports/baldurs1/ CachePath=$romdir/ports/cache/ _EOF_ #create Baldurs Gate 2 configuration cat > "$md_conf_root/baldursgate2/GemRB.cfg" << _EOF_ GameType=bg2 GameName=Baldurs Gate 2 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/baldurs2/ CD1=$romdir/ports/baldurs2/data/ CachePath=$romdir/ports/cache/ _EOF_ #create Icewind 1 configuration cat > "$md_conf_root/icewind1/GemRB.cfg" << _EOF_ GameType=auto GameName=Icewind Dale 1 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/icewind1/ CD1=$romdir/ports/icewind1/Data/ CD2=$romdir/ports/icewind1/CD2/Data/ CD3=$romdir/ports/icewind1/CD3/Data/ CachePath=$romdir/ports/cache/ _EOF_ #create Icewind2 configuration cat > "$md_conf_root/icewind2/GemRB.cfg" << _EOF_ GameType=iwd2 GameName=Icewind Dale 2 Width=800 Height=600 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/icewind2/ CD1=$romdir/ports/icewind2/data/ CachePath=$romdir/ports/cache/ _EOF_ #create Planescape configuration cat > "$md_conf_root/planescape/GemRB.cfg" << _EOF_ GameType=pst GameName=Planescape Torment Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/planescape/ CD1=$romdir/ports/planescape/data/ CachePath=$romdir/ports/cache/ _EOF_ chown "$__user":"$__group" "$md_conf_root/baldursgate1/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/baldursgate2/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/icewind1/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/icewind2/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/planescape/GemRB.cfg" }
SUGGESTION-FIX
I have modified and tested below since version v0.9.4 is latest on github and as per dev supports python3.3 and above
Also on my OS Armbian UBUNTU 24.04 i have installed libstdc++-14-dev instead libstdc++-12-dev
If of interested please replace/update current scriptmodule to#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="gemrb" rp_module_desc="gemrb - open-source implementation of Infinity Engine" rp_module_licence="GPL2 https://raw.githubusercontent.com/gemrb/gemrb/master/COPYING" rp_module_repo="git https://github.com/gemrb/gemrb.git v0.9.4" rp_module_section="exp" rp_module_flags="!mali dispmanx" function depends_gemrb() { getDepends python3-dev libopenal-dev cmake libpng-dev libfreetype6-dev libsdl2-dev libvorbis-dev libvlc-dev libvlccore-dev clang libstdc++-12-dev } function sources_gemrb() { gitPullOrClone } function build_gemrb() { mkdir -p build cd build make clean cmake .. -DCMAKE_INSTALL_PREFIX="$md_inst" -DCMAKE_BUILD_TYPE=Release -DFREETYPE_INCLUDE_DIRS=/usr/include/freetype2/ -DSDL_BACKEND=SDL2 -DUSE_SDLMIXER=OFF -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ make md_ret_require="$md_build/build/gemrb/gemrb" } function install_gemrb() { cd build make install } function configure_gemrb() { mkRomDir "ports/baldurs1" mkRomDir "ports/baldurs2" mkRomDir "ports/icewind1" mkRomDir "ports/icewind2" mkRomDir "ports/planescape" mkRomDir "ports/cache" addPort "$md_id" "baldursgate1" "Baldurs Gate 1" "$md_inst/bin/gemrb -C $md_conf_root/baldursgate1/GemRB.cfg" addPort "$md_id" "baldursgate2" "Baldurs Gate 2" "$md_inst/bin/gemrb -C $md_conf_root/baldursgate2/GemRB.cfg" addPort "$md_id" "icewind1" "Icewind Dale 1" "$md_inst/bin/gemrb -C $md_conf_root/icewind1/GemRB.cfg" addPort "$md_id" "icewind2" "Icewind Dale 2" "$md_inst/bin/gemrb -C $md_conf_root/icewind2/GemRB.cfg" addPort "$md_id" "planescape" "Planescape Torment" "$md_inst/bin/gemrb -C $md_conf_root/planescape/GemRB.cfg" #create Baldurs Gate 1 configuration cat > "$md_conf_root/baldursgate1/GemRB.cfg" << _EOF_ GameType=bg1 GameName=Baldurs Gate 1 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/baldurs1/ CD1=$romdir/ports/baldurs1/ CachePath=$romdir/ports/cache/ _EOF_ #create Baldurs Gate 2 configuration cat > "$md_conf_root/baldursgate2/GemRB.cfg" << _EOF_ GameType=bg2 GameName=Baldurs Gate 2 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/baldurs2/ CD1=$romdir/ports/baldurs2/data/ CachePath=$romdir/ports/cache/ _EOF_ #create Icewind 1 configuration cat > "$md_conf_root/icewind1/GemRB.cfg" << _EOF_ GameType=auto GameName=Icewind Dale 1 Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/icewind1/ CD1=$romdir/ports/icewind1/Data/ CD2=$romdir/ports/icewind1/CD2/Data/ CD3=$romdir/ports/icewind1/CD3/Data/ CachePath=$romdir/ports/cache/ _EOF_ #create Icewind2 configuration cat > "$md_conf_root/icewind2/GemRB.cfg" << _EOF_ GameType=iwd2 GameName=Icewind Dale 2 Width=800 Height=600 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/icewind2/ CD1=$romdir/ports/icewind2/data/ CachePath=$romdir/ports/cache/ _EOF_ #create Planescape configuration cat > "$md_conf_root/planescape/GemRB.cfg" << _EOF_ GameType=pst GameName=Planescape Torment Width=640 Height=480 Bpp=32 Fullscreen=0 TooltipDelay=500 AudioDriver = openal GUIEnhancements = 15 DrawFPS=0 CaseSensitive=1 GamePath=$romdir/ports/planescape/ CD1=$romdir/ports/planescape/data/ CachePath=$romdir/ports/cache/ _EOF_ chown "$__user":"$__group" "$md_conf_root/baldursgate1/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/baldursgate2/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/icewind1/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/icewind2/GemRB.cfg" chown "$__user":"$__group" "$md_conf_root/planescape/GemRB.cfg" }
-
Thanks for reporting, we'll see how to get this fixed. FWIW, it doesn't seem like
libstdc++-12-dev
needs to be installed, just a recent C++-14 supported libc/gcc. -
Dear@mitu
I needed it cause of the clang compiler use.
Without it failed on first trial.
Also didn't compile without the clang compiler that's why Ive used/added it.Just some extra info. I have the log(s) that failed if of interest.
Have a nice weekend
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.