Смотри. Тут такой прикол. Вот есть системная библиотека под названием 'libc.so.6'. Это Glibc.RHEL 4 - GLIBC 2.3
RHEL 5 - GLIBC 2.5 (но всё равно все бинарники, собранные с ним, зависят максимум от GLIBC 2.4)
RHEL 6 - GLIBC 2.12
RHEL 7 - GLIBC 2.17
Прикол в том, что нельзя скачать библиотеки с GLIBC более новой версии, а потом подсунуть их для тех программ, которые ругаются "GLIBC 2.17 не найден в вашей системе!". Ты выполняешь команду 'export LD_LIBRARY_PATH=/home/username/new_glibc_libs:$LD_LIBRARY_PATH', но толку нет, программа всё равно выдаёт ту же самую ошибку.
Есть два выхода:
1. Обновлять Glibc непосредственно в системе. В идеале - скомпилировать пакет для конкретной версии системы
2. Воспользоваться утилитой patchelf. Пропатчить бинарник, который ты собираешься исполнять. Заставить бинарник вызывать другую версию библиотеки 'ld-linux-x86-64.so.2' - не ту, которая в систему установлена, а ту, которая находится в '/home/username/new_glibc_libs'
Например я пытался запустить Opera 12.16 в RHEL 5. Упс - а опера зависит от GLIBC 2.8 или более новой версиси. Я попробовал более старые версии - последней версией, слинкованной с более старым GLIBC, оказалась 11.52. Кажется, так.
Однако при помощи patchelf я пропатчил исполняемый файл оперы, и запустил 12.16 в RHEL 5 успешно.
Я потом попробовал провернуть то же самое со Steam для Linux, но потерпел неудачу.
Вот, а с остальными библиотеками всё гораздо-гораздо проще. Вот скажем, libSDL и libOpenAL. Можно просто распространять их вместе с дистрибутивом игры. Ты видел, как я это сделал в своей сборке fheroes2. Я подсмотрел это решение в играх, версии для Linux которых делал Icculus. Например в Doom3 1.3.1 в версии для Linux он положил в дистрибутив игры - библиотеки 'libgcc_s.so.1' и 'libstdc++.so.6'. В дистрибутив игры 'World of Goo' - библиотеки SDL 1.2. В дистрибутив игры Braid - libCg.
Но не только Icculus так делает. Многие другие разработчики игр так делают, например в игре Trine, портированной Linux Game Publishing (бывш. Loki Games, в которой Icculus раньше работал) рядом с исполняемым файлом игры лежит libphysx. Понятное дело, что в системе у пользователя такой библиотеки не может быть установлено. Поэтому разработчики игры распространяют библиотеку вместе с игрой. Но так можно делать и с библиотеками, которые, как правило, в системе у пользователя установлены. Просто установлены не у всех, или у кого-то они могут быть слишком старыми