Как использовать ctfconvert и ctfmerge в cmake

Я хочу использовать ctfconvert и ctfmerge в CMake. Я прошел через пару ссылок ниже.

https://java.net/projects/solaris/sources/on-src/content/usr/src/tools/scripts/nightly.sh

http://lethargy.org/~jesus/writes/mdb-ctf-dwarf-and-other-angelic-things/#.V-JUFPl97X4

Источник в ссылках указывает, что нам нужно создать объектный файл источника, а затем применить к нему ctfmerge и ctfconvert. Я узнал, что в CMake есть возможность создать библиотеку OBJECT. Но я не понимаю, как применить эти ctfconvert и ctfmerge к библиотекам OBJECT, поскольку $‹"TARGET_OBJECTS:objlib> можно использовать только в add_library() или add_executable().

Как решить эту проблему?


person Fun with coding    schedule 21.09.2016    source источник


Ответы (1)


Нам нужно установить пакет onbld на Solaris 11 или собрать исходный код Solaris 10, чтобы получить пакет onbld для установки двоичных файлов ctf. Затем в конечном итоге необходимо вызвать двоичные файлы ctf в CMakeList.txt для запуска. Нам нужно создать объектный файл из двоичного файла ctfconvert, а затем использовать ctfmerge при создании исполняемой/разделяемой библиотеки, чтобы объединить объектный файл, содержащий информацию заголовка ctf, с вновь созданной исполняемой/разделяемой библиотекой. Если нам нужно создать статическую библиотеку, нам просто нужно использовать ctfconvert для файла, чтобы создать объектный файл, содержащий заголовок ctf, который поместит эти файлы в архив. Когда мы используем эту статическую библиотеку для создания исполняемой/разделяемой библиотеки, в то время нам нужно использовать ctfmerge для каждого объектного файла из статической библиотеки.

person Fun with coding    schedule 13.12.2016