LINUX.ORG.RU

Запуск бинарника, скомпилированного на другой машине


1

1

доброго времени суток!

имеются: 1. установленный дистрибутив linux (на выбор Salix, Debian) 2. ELF-файл, скомпилированный для неизвестной версии ядра linux 3. желание запустить вышеуказанное приложение

проблема: при попытке запуска получаю сообщение: «Нет такого файла или каталога»

вопросы: на что он ругается (файл не модифицирован)? надо прикрутить какие-то библиотеки? как их вычислить? есть ли хоть какая-нибудь вероятность добиться выполнения приложения на том, что имею? как?

заранее благодарю за помощь!


проблема: при попытке запуска получаю сообщение: «Нет такого файла или каталога»

Бинарник исполняемый? chmod a+x бинарник

надо прикрутить какие-то библиотеки? как их вычислить?

ldd бинарник

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

>Бинарник исполняемый? chmod a+x бинарник

да

ldd бинарник

насколько помню (дело было ночью), так же выругался. проверю вечером.

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

>насколько помню (дело было ночью), так же выругался. проверю вечером.

Тогда стоит попробовать 'objdump -x бинарник | grep NEEDED' и проверить наличие библиотек вручную.

Если же бинарник требует какой-то файл или библиотеку через dlopen() в рантайме, то должен помочь strace.

Sion
()

>при попытке запуска получаю сообщение: «Нет такого файла или каталога»

Отсюда поподробнее, как именно запускаешь?

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

>А как насчет классической грабли с рабочим каталогом?

с этого места поподробнее, если можно

sa174
() автор топика
Ответ на: комментарий от novitchok

>Отсюда поподробнее, как именно запускаешь?

./xpehotehb

sa174
() автор топика
Ответ на: комментарий от Sion

>Тогда стоит попробовать 'objdump -x бинарник | grep NEEDED' и >проверить наличие библиотек вручную.

Если же бинарник требует какой-то файл или библиотеку через dlopen() в >рантайме, то должен помочь strace.

спробую, спасибо

sa174
() автор топика
Ответ на: комментарий от blind_oracle

>Очень похоже на то, что файл собран для другой архитектуры...

кстати, вариант. спасибо, проверю

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

file твой-ELF-файл
Тебе скажут про архитектуру.
И выше дали очень хороший совет запускать через strace
strace твой-ELF-файл

Lumi ★★★★★
()

Посмотри еще readelf -l xpehotehb на предмет «Requesting program interpreter», такое бывает, если там левый файл. Ни ldd, ни strace тогда работать не будут.

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