Как вставлять данные в двоичный файл Mac OS X в текстовый раздел TEXT?
У меня есть инструмент командной строки для Mac OS X, который выиграет от того, что некоторые данные встроены в сам файл.
Я знаю, что файлы mach-o поддерживают несколько сегментов, некоторые из которых могут использоваться для хранения произвольных данных. Но я не могу найти инструмент командной строки для этого.
Хотя я знаю, что есть другие, возможно, более простые способы (например, преобразовать файл данных в исходный код C и связать его с помощью gcc), чтобы получить данные в мой двоичный файл, эта проблема вызвала мой интерес. Кто-нибудь знает магию?
Ответы
Ответ 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, который может быть применен к переменной, чтобы сказать, что она принадлежит к нестандартной секции.