Задать вопрос
Ответы пользователя по тегу Программирование
  • Програма есть, но она не запускается

    CleverMouse
    @CleverMouse
    В формате ELF за загрузку динамических библиотек отвечает специальная библиотека-интерпретатор aka interpreter, имя которой указано в специальном сегменте elf-файла. Если ядро при exec() обнаруживает такой заголовок, то ядро берёт оттуда имя интерпретатора и пытается загрузить и начать выполнение новой программы с интерпретатора. Если запрошенного интерпретатора на диске не оказывается, создание процесса фейлится с кодом ошибки «файл не найден». С точки зрения создателя — на картинке это bash — это ничем не отличается от отсутствия бинарника, а ядро, которое знает разницу, на терминал ничего не выводит в принципе.
    Посмотреть, какой интерпретатор нужен программе, можно через readelf -l . В данном случае явно из 64-битного окружения куда-то слетел 32-битный интерпретатор.
    Ответ написан
    Комментировать