Библиотеки TeamSpeak3

816
Scott

Я скачал TeamSpeak 3сервер с их официального сайта (он 64-битный, так как мой выделенный сервер тоже 64-битный).

Вот что я получаю, когда пытаюсь запустить сервер:

Starting the TeamSpeak 3 server TeamSpeak 3 server started, for details please view the log file /libexec/ld-elf.so.1: scott# /lib/libiconv.so.3: unsupported file layout 

В чем дело? /libexec/ld-elf.so.1 существует, как и второй, есть ли какое-то решение для этого?

0

2 ответа на вопрос

1
Horn OK Please

В каком дистрибутиве вы работаете? Нужно больше информации.

Если ваш сервер TS3 является 64-битным и вы используете дистрибутив, производный от Fedora или Red Hat, вы получаете эту ошибку, потому что все двоичные файлы в / lib являются 32-битными и вы не можете загрузить 32-битные изображения в 64-битное адресное пространство.

Вам может понадобиться добавить / lib64 в ваш файл /etc/ld.so.conf (а затем запустить ldconfig) или экспортировать переменную среды LD_LIBRARY_PATH = / lib64, например так:

export LD_LIBRARY_PATH=/lib64 
Я использую FreeBSD @tags. Указанные вами шаги похожи на FreeBSD? Scott 11 лет назад 0
Бах, глупые метки. Укажите это в своем вопросе! :) Но да, FreeBSD следует философии Red Hat, в которой / lib и / usr / lib являются 32-битными, а / usr / lib64 и / lib64 - 64-битными. Он пытается загрузить 32-разрядное изображение в 64-разрядное адресное пространство. Это также объясняет, почему я не узнал сообщение об ошибке «Неподдерживаемая структура файла» из errno-реализации Linux ... Horn OK Please 11 лет назад 0
Также вы используете версию Teamspeak3 для Linux или версию FreeBSD? Horn OK Please 11 лет назад 0
Родная версия FreeBSD. Scott 11 лет назад 0
В пути `/ etc` нет файла` ld.so.conf`. Scott 11 лет назад 0
Не беспокойтесь о ld.so.conf. Изменение переменной среды LD_LIBRARY_PATH имеет тот же эффект, поэтому попробуйте сначала. Если это работает, то вы знаете, что это проблема с динамическим путём компоновщика, и затем можете отдельно выяснить, как сделать это «постоянным», либо написав скрипт-обертку, либо изменив собственный вариант FreeBSD на тему ld.so.conf. Horn OK Please 11 лет назад 0
Я также оставляю вам фантастическую ссылку на всемирно известную TLDP. Прочитайте, в частности, заметки о «других UNIX» в этих разделах. http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html Horn OK Please 11 лет назад 0
@allquixotic, FreeBSD не имеет lib64. Имеет каталог lib32. Teamspeak - это бинарный файл Linux, а эмуляция linux всегда 32-битная. Так что, если это бинарный Linux, вам нужна 32-битная версия arved 11 лет назад 0
С другой стороны, во FreeBSD нет файла /lib/libiconv.so.3. Откуда этот файл? arved 11 лет назад 0
@arved, Скотт сказал, что у него собственная версия FreeBSD, а не версия Linux. Вы уверены, что это бинарный файл Linux? Horn OK Please 11 лет назад 0
хороший вывод файла и ldd определенно помог бы пролить свет на эту проблему arved 11 лет назад 0
Задача решена. Мне пришлось удалить библиотеку `/ lib / libiconv.so.3`, и тогда проблема исчезла. Вроде странно. Scott 11 лет назад 1
0
arved

FreeBSD не имеет lib64. Имеет каталог lib32.

Teamspeak - это бинарный файл Linux, а эмуляция linux всегда 32-битная. Так что, если это бинарный Linux, вам нужна 32-битная версия

С другой стороны, нет /lib/libiconv.so.3во FreeBSD. Удалите этот файл, и он должен работать нормально

У вас есть много представителей, чтобы комментировать random 11 лет назад 0

Похожие вопросы