Как встроить данные в раздел TEXT двоичного файла Mac OS X mach-o?

У меня есть инструмент командной строки Mac OS X, который выиграл бы от встраивания некоторых данных в сам двоичный файл.

Я знаю, что файлы mach-o поддерживают несколько сегментов, некоторые из которых можно использовать для хранения произвольных данных. Но я не могу найти инструмент командной строки для этого.

Хотя я знаю, что есть другие, вероятно, более простые способы (например, преобразовать файл данных в исходный код C и связать его с помощью gcc), чтобы получить данные в мой двоичный файл, эта проблема пробудила мой интерес. Кто-нибудь знает магию?


person schwa    schedule 22.10.2009    source источник


Ответы (1)


Компоновщик ld принимает аргумент -sectcreate.

На справочной странице

 -sectcreate segname sectname file
             The section sectname in the segment segname is created from
             the contents of file file. The combination of segname and 
             sectname must be unique  there cannot already be a 
             section (segname,sectname) from any other input.

GCC также имеет section, который можно применить к переменной, чтобы сказать, что она принадлежит нестандартному разделу.

person Ken    schedule 22.10.2009
comment
Дох. Очевидно в ретроспективе. Спасибо. - person schwa; 22.10.2009