LINUX.ORG.RU

ld-elf.so - не находится.


0

0

Почему-то некоторые программы (насчитал 3 из примерно 20-ти недавно установленных), установленные с пакетов, выдают следующую ошибку:

ELF interpreter /libexec/ld-elf.so.1 not found

Они что, ищут эльфа в /libexec из корня? (ну ведь есть /usr/libexec для этого...)

Народ, если кто знает... please?

А может этот эльф должен быть в /usr/local/libexec? Так ведь нет же...

anonymous
Ответ на: комментарий от Murr

ОС - FreeBSD. Смотрел весь readelf. Ничего похожего на RPATH там не нашел...

Зато в нем же, в секции "Program Headers": [Requesting program interpreter: /libexec/ld-elf.so.1]

Значит, по неправильному пути ищет?

Кстати, как в локальном, так и в корневом /etc конфига не нашлось. Зато нашелся в /usr/compat/linux/etc... и написано в том конфиге:

/usr/X11R6/lib

Что на трабл, наверное, не влияет?..

anonymous
()
Ответ на: комментарий от anonymous

Не RPATH, а путь к интерпретатору, конечно. :)

Если честно, то я не уверен можно ли его сменить (путь).

Если брать GNU RTLD, то ему можно подсунуть бинарник и он его исполнит: /lib/ld-linux.so.2 ./myprog, можно попробовать сделать то же самое и в FreeBSD (если нужный интерпретатор есть), но опять же я не уверен, что так можно пускать бинарники в FreeBSD, т.к. в том же Lynx так пускать бинарники нельзя.

Murr ★★
()
Ответ на: комментарий от anonymous

Я не знаю кто такой этот ld-elf.so.1

Рассуждения на общую тему:

Если это стандартный интерпретатор для твоего релиза FreeBSD, то странно, что там прописан неправильный путь, но можно попробовать скопировать интерпретатор и посмотреть будет ли работать.

Если это интерпретатор нестандартный и его вообще нет на машине, то скорее всего сам бинарник - для другой ОС и для его запуска может понадобиться специальная ABI прослойка.

Murr ★★
()
Ответ на: комментарий от Murr

Ребят, спасибо! Самый нужный пакет уже удалил и поставил прогу из исходников вапсче. Заработала :))...

2 Murr: Интерпретатор эльф есть, и даже там, где все уважающие себя бинарники его находят, то есть, в /usr/libexec. И в фрях им пользуются очень многие проги. Так что и правда, неясно, где порылась собака...

Что же касается других интерпретаторов, пользоваться ими не пробовал, но если они линуховые, может лучшей и не пробовать? :)

anonymous
()
Ответ на: комментарий от anonymous

Кстати, прога: antiword. Вещь очень и очень неплохенная :) Тем, кто не любит всяких микрософтов :)

anonymous
()
Ответ на: комментарий от anonymous

>2 Murr: Интерпретатор эльф есть, и даже там, где все уважающие себя >бинарники его находят, то есть, в /usr/libexec. И в фрях им пользуются > очень многие проги. Так что и правда, неясно, где порылась собака...

Понятно. А может быть, скажем так: пакет для другой BSD (к примеру для NetBSD), в которой используется такой же интерпретатор, но живет он в другом месте? Просто я слабо верю, что просто накосячили с INTERP. :)

>Что же касается других интерпретаторов, пользоваться ими не пробовал, >но если они линуховые, может лучшей и не пробовать? :)

Запускать нужно, конечно же, только тем интерпретатором, который указан - это факт. Просто раз уж ядро грузит только по пути INTERP, то я и предложил форсировать использование интерпретатора (с таким же именем) по другому пути: /usr/libexec/ld-elf.so.1 ./myprog.

Murr ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.