Как получить плоский двоичный файл из исполняемого файла в C

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

Я знаю, что objcopy может помочь с помощью:

objcopy --only-section=.text --output-target binary a.out a.out.bin

Но было бы намного лучше, если бы я мог реализовать ту же цель в вызове функции с использованием библиотеки BFD. Есть ли способ вызвать objcopy, используя вызовы функций?

0

Решение

Вы, вероятно, ищете функцию в binutils / bfd libs. Вы можете найти документ на http://www.delorie.com/gnu/docs/binutils/bfd_toc.html и я думаю, что функция, которую вы ищете, это:

boolean bfd_get_section_contents (bfd *abfd, asection *section,
PTR location, file_ptr offset,
bfd_size_type count);

чей документ можно найти на http://www.delorie.com/gnu/docs/binutils/bfd_57.html

1

Другие решения

Других решений пока нет …