Как сгенерировать файлы dsym рядом с исполняемым файлом, а не вне пакета, желательно без сценария после установки?
Я использую LLVM Clang с Xcode, и средство очистки адресов не создает отчет "файл: строка". Я прочитал документацию, и в ней говорится, что нужно запустить
dsymutil
на двоичном файле перед запуском приложения.
http://clang.llvm.org/docs/AddressSanitizer.html#symbolizing-the-reports
Я могу добиться этого, добавив этап сборки сценария выполнения, но это неуклюже. Чтобы сделать то же самое с unix-makefiles, я решил, что
install(SCRIPT <script.cmake>)
было бы лучше.
Есть ли способ избежать всего этого и запустить Xcode?
dsymutil
как часть процесса сборки, возможно, из-за настройки сборки, о которой я не знаю?
Я пробовал установить формат отладочной информации на карликовый с помощью dsym, но llvm-symbolizer не использует его. Я предполагаю, что разница в том, что dsymutil создает файл.dsym рядом с исполняемым файлом внутри пакета:MyExec.dsym
. Пока Xcode создает его вне пакета:
MyExec.app.dsym
.
1 ответ
В настройках сборки в Xcode измените формат отладки с "DWARF" на "DWARF с dSYM".