Closed ktwrd closed 4 months ago
When checking the libraries used by the current version (the build that is currently available via https://beans.adastral.net/beans
), then the following libraries are used
./beans: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./beans)
./beans: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./beans)
./beans: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./beans)
linux-vdso.so.1 (0x00007fff69904000)
libssl.so.3 => not found
libcrypto.so.3 => not found
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000079460bde5000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000079460bc96000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000079460baa4000)
/lib64/ld-linux-x86-64.so.2 (0x000079460cd80000)
But when using rust-tls
, these libraries are used.
linux-vdso.so.1 (0x00007ffc599ad000)
libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1 (0x0000705ab34e0000)
libcrypto.so.1.1 => /lib/x86_64-linux-gnu/libcrypto.so.1.1 (0x0000705ab1529000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x0000705ab34c5000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x0000705ab34a2000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x0000705ab13da000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x0000705ab349c000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000705ab11e8000)
/lib64/ld-linux-x86-64.so.2 (0x0000705ab357f000)
Note The build using the rust-tls
feature was created with Ubuntu 20.04.
Hopefully this will be fixed in v1.5.0
Using musl as a rust target (instead of gnu) could also help with dropping the libc
dependency on the system.
Current commit in develop
(action) should work without glibc on the system or libssl. This was fixed by building on Linux with musl
instead of gnu
, and by using rustls
instead of native-tls
for sentry and reqwest.
Windows builds will be unaffected since it uses msvc
.
Fix will be available when v1.5.0
is released later today. Currently available to download right now in this release
Source Engine Servers depend on Ubuntu 20.04 which use glibc 2.29, but only have libssl v1.1.
This is an issue because at the moment it's one or the other, and it would be best for
beans-rs
to conform to the requirements (which is not using libssl v3.x).Could use rust-tls instead?