Running GOG's Baldurs Gate II on VoidLinux

2021-04-20
2 min read

I wanted to relive this classic and according to the reviews this enhanced version is very good, GOG has Linux installers so I tried this on voidlinux, the installer is distro agnostic so no issues there. The problem was the game executable needed some dependencies that were no available on voidlinux.

this is the output from ldd, here is already fixed as there are no dependencies missing.

information available (required by /home/neirac/GOG Games/Baldurs Gate 2 Enhanced Edition/game/BaldursGateII64)
	linux-vdso.so.1 (0x00007fff92fcb000)
	libopenal.so.1 => /usr/lib/libopenal.so.1 (0x00007f1f1e407000)
	libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f1f1e380000)
	libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f1f1e35f000)
	librt.so.1 => /usr/lib/librt.so.1 (0x00007f1f1e354000)
	libssl.so.1.0.0 => /usr/lib64/libssl.so.1.0.0 (0x00007f1f1e2f4000)
	libcrypto.so.1.0.0 => /usr/lib64/libcrypto.so.1.0.0 (0x00007f1f1e0fa000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007f1f1e0c9000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f1f1df87000)
	libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f1f1df81000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f1f1dd18000)
	libm.so.6 => /usr/lib/libm.so.6 (0x00007f1f1dbd3000)
	libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f1f1dbb9000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007f1f1d9f1000)
	libsndio.so.7 => /usr/lib/libsndio.so.7 (0x00007f1f1d9dc000)
	/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f1f1e582000)
	libGLdispatch.so.0 => /usr/lib/libGLdispatch.so.0 (0x00007f1f1d925000)
	libGLX.so.0 => /usr/lib/libGLX.so.0 (0x00007f1f1d8f3000)
	libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f1f1d8d9000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f1f1d8ac000)
	libasound.so.2 => /usr/lib/libasound.so.2 (0x00007f1f1d7ae000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f1f1d7a9000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f1f1d7a1000)

The missing libraries were libcrypto.so.1.0.0 and libssl.so.1.0.0 so the fix was to just create a symbolic link to the ones that the game expects.

[neirac@gendyn Baldurs Gate 2 Enhanced Edition]$ doas ln -sf /usr/lib/libcrypto.so.46.0.1 /usr/lib/libcrypto.so.1.0.0
[neirac@gendyn Baldurs Gate 2 Enhanced Edition]$ doas ln -sf /usr/lib/libssl.so.48.0.1  /usr/lib/libssl.so.1.0.0

There are a couple of warnings but now executing the game should start!.

[neirac@gendyn Baldurs Gate 2 Enhanced Edition]$ ./start.sh
Running Baldur's Gate 2 Enhanced Edition
./BaldursGateII64: /usr/lib64/libcrypto.so.1.0.0: no version information available (required by ./BaldursGateII64)
./BaldursGateII64: /usr/lib64/libssl.so.1.0.0: no version information available (required by ./BaldursGateII64)
./BaldursGateII64: /usr/lib64/libssl.so.1.0.0: no version information available (required by ./BaldursGateII64)
INFO: status: 1
INFO: error: cannot open file pointer: No such file or directory
INFO: Creating DPWrapper
INFO: Steam not found
....

References:
https://www.gog.com/game/baldurs_gate_2_enhanced_edition