Перейти к содержанию

FreeBSD Linux compatible mode

Понадобилось мне поставить сервер CS 1.6 на родную фрю. Эмулятор линукса уже стоял, поэтому особо не заморачивался. Запускаю бинарник… и нифига:

./steam: error while loading shared libraries: /usr/lib/librt.so.1: ELF file OS ABI invalid

Кому интересно — идем под кат. Остальные — не парьтесь 😉

Старый добрый гуглеж навел на мысль:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Running /compat/linux/bin/date for instance gives:

    /compat/linux/bin/date: error while loading shared libraries:
    /usr/lib/librt.so.1: ELF file OS ABI invalid

I think I've found the cause though. "/compat/linux/sbin/ldconfig -p" gives
the following for librt.so.1:

    librt.so.1 (libc6, OS ABI: Linux 2.4.20) => /lib/librt.so.1

Changing the compat.linux.osrelease sysctl value from 2.4.2 to 2.4.20
solves the problem (matlab works in console mode, there's still a
problem with java however so no graphical mode). The advice in
/usr/ports/UPDATING mentioned that this sysctl value shouldn't be
changed though, so perhaps this is simply a typo in the default value?

Перевожу на русский: версия библиотеки не совпадает с версией ядра эмулятора. Посему через sysctl выставляем нужную версию (у меня была как раз 2.4.2, а нужна 2.4.20), и наслаждаемся 🙂

Будьте первым, кто оставит комментарий

Добавить комментарий

%d такие блоггеры, как: