Это возможно, но не тривиально (предупреждаю вас :)). ELF содержит много информации о его содержимом в заголовочных файлах. текст - это просто один раздел в файле ELF. Я тоже пытаюсь это сделать, но пока не удается.
Я не пробовал objcopy для замены текстового сегмента, но попробуйте это. У меня было несколько проблем с этим, поэтому я не продолжил это.
objcopy srcELF--dump-section .text=text.dump
objcopy dstELF --add-section .text=text.dump
Мой предпочтительный способ - использовать libelf .
С помощью libelf вы можете изменить двоичный файл ELF (добавить раздел, изменить данные в разделе и т. Д.).
Этот урок дает хорошее начало.
libelf по образцу