Вопросы с тегом «elf»

ELF расшифровывается как Executable and Linkable Format, формат файла для файлов, содержащих машинный код.

50
Можем ли мы получить информацию о компиляторе из двоичного файла elf?

Есть ли шанс узнать, как был построен бинарный файл под Linux? (и / или другой Unix) Компилятор, версия, время, флаги и т.д ... Я посмотрел readelfи не смог найти много, но могут быть другие способы анализа двоичного кода / раздела и т. Д. Что-нибудь, что вы знаете, как...

34
Самый старый двоичный файл, работающий на Linux?

В обсуждении обратной совместимости в ядре Linux и графическом интерфейсе пользователя Алан Кокс отмечает, что « мое ядро ​​3.6rc будет по-прежнему работать с двоичным файлом Rogue, созданным в 1992 году. X обратно совместим с приложениями, намного старше Linux ». Итак, насколько обратно-совместимы...

32
Почему программы не распространяются в скомпилированном формате?

Но они дают такие инструкции, как cd downloaded_program ./configure make install Это создает необходимый ELF и, возможно, некоторые файлы .so. Почему бы не поместить их в zip-файл для загрузки, как в приложениях Windows? Есть ли какая-то причина, почему они должны быть скомпилированы...

26
Что такое ELF Magic?

Раньше я видел дискуссию о магии ELF, совсем недавно комментарии в этом вопросе об обмене стека безопасности . Я видел это упомянутое ранее, и я видел это в моих собственных журналах загрузки .. Но я не уверен, что это такое. Страница справочника по эльфу немного над моей головой, так как я не...

23
Что означает «LSB» при обращении к исполняемым файлам в выводе / bin / file?

Я нашел термин « исполняемый файл LSB » или « общий объект LSB » в выводе fileкоманды в Linux. Например: $ file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32,...

18
Почему команда file говорит, что двоичные файлы ELF предназначены для Linux 2.6.9?

Всякий раз, когда я запускаю файл в двоичном файле ELF, я получаю такой вывод: [jonescb@localhost ~]$ file a.out a.out: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped Мне просто интересно, что...

14
Определите, является ли конкретный процесс 32- или 64-битным

Учитывая ядро ​​Linux версии 2.6.x или новее и существующее пользовательское пространство, которое способно работать с двоичными файлами ELF32 и ELF64 (т. Е. Прошло много времени. Как узнать, что мой ЦП поддерживает 64-битные операционные системы под Linux? ), Как я могу определить, является ли...

13
Использование альтернативного libc с хаки ld-linux.so; более чистый метод?

У меня есть устаревшая система с очень старым glibc, которую мы не можем модернизировать, не взяв на себя кучу работ по тестированию / валидации. Мне нужно было запускать новые программы (например, Java 1.7) в этой системе несколько раз. Я выбрал решение chroot, где я упаковываю все необходимые...

13
Linux, GNU GCC, ld, версии скриптов и двоичный формат ELF - Как это работает?

Я пытаюсь узнать больше о версиях библиотек в Linux и о том, как заставить все это работать. Вот контекст: - У меня есть две версии динамической библиотеки, которые предоставляют один и тот же набор интерфейсов, скажем, libsome1.soи libsome2.so. - Приложение связано с libsome1.so. - Это приложение...

11
Невозможно выполнить двоичный файл в NixOS - нет такого файла или каталога

Я попытался установить текущую версию oracle jre на виртуальную машину под управлением NixOS. Теперь происходит следующее: [michas@cc:~]$ tar xvzf jre-7u40-linux-x64.tar.gz |grep bin/java jre1.7.0_40/bin/javaws jre1.7.0_40/bin/java_vm jre1.7.0_40/bin/java [michas@cc:~]$ ls -l ./jre1.7.0_40/bin/java...

11
Когда я могу редактировать строки в исполняемом двоичном файле?

У меня есть исполняемый двоичный файл; давайте назовем это a.out. Я вижу, что бинарный файл содержит строки $ strings a.out ... /usr/share/foo .... Мне нужно изменить строку /usr/share/fooна /usr/share/bar. Могу ли я просто заменить строку на sed? sed -i 's@/usr/share/foo@/usr/share/bar@' a.out Это...

11
Определить, был ли двоичный файл ELF создан с помощью инструментария gprof?

Можно ли проверить, скомпилирована ли данная программа с помощью инструментария GNU gprof, то есть с флагом '-pg', переданным и компилятору, и компоновщику, не запуская его, чтобы проверить, будет ли он генерировать...

10
Какие части исполняемого файла ELF загружаются в память и где?

Что я уже знаю: Исполняемый файл ELF имеет несколько разделов, очевидно, что секции .text и .data загружаются в память, поскольку они являются основными частями программы. Но чтобы программа работала, ей нужно больше информации, особенно когда она динамически связана. Меня интересуют такие разделы,...

10
Почему readelf показывает «System V» как мою ОС вместо Linux?

Я скомпилировал небольшую программу на C (2 строки кода) с помощью gcc, чтобы попытаться понять формат файла ELF. Делая readelf -hна объектный файл, я в шапке: OS/ABI: UNIX - System V Я использую Fedora, так почему же это не Linux? Редактировать : я скомпилировал int main(){ int x = 0; x++; } с gcc...

9
исполняемый двоичный файл: файл не найден

Я знаю, что есть похожие вопросы, но я не нашел ни решения, ни этого точного случая. Двоичный файл был построен на Arch Linux с использованием его GCC 4.7. Пакет отлично работает в системе сборки. Команды ниже были выполнены на: Linux vbox-ubuntu 3.2.0-29-generic # 46-Ubuntu SMP пт 27 июля 17:03:23...

9
Почему `не удаляет 'заголовки разделов из исполняемых файлов ELF?

Для работы минимального исполняемого файла ELF требуется только заголовок ELF и хотя бы один программный заголовок. Однако, когда я запускаю strip на коротком исполняемом файле, он решает не выбрасывать таблицу заголовков разделов или раздел строк разделов, оставляя их рядом, хотя они не имеют цели...

8
Как bash выполняет файл ELF?

Когда я использую Linux Box, я использую bash в качестве оболочки. Теперь мне стало интересно, как bash управляет выполнением ELF-файла, то есть когда я печатаю ./program, а программа представляет собой ELF-файл. Я добавил bash-4.3.tar.gz, похоже, что нет какого-то парсера магических чисел, чтобы...