Как сгенерировать файлы 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".

Другие вопросы по тегам