запретить компиляции генерировать dSYM на OS X (используя make) - PullRequest
4 голосов
/ 31 января 2011

У меня есть проект на языке c ++ (с открытым исходным кодом), которому по умолчанию не нужно удалять символы отладки. С большим количеством тестовых исполняемых файлов, есть много файлов dSYM, сгенерированных на OS X. Я пробовал -g3 как флаг g ++ безрезультатно. Идеи?

Спасибо! Juan

Ответы [ 3 ]

3 голосов
/ 22 марта 2011

Как отметил Тед Мельчарек, gcc не создает файлы dSYM самостоятельно, он просто сохраняет информацию, необходимую для их создания, в объектных файлах. Если вы используете make для сборки своего проекта, наиболее вероятно, что в make-файле есть отдельный шаг, который запускает dsymutil после компиляции / компоновки исполняемого файла, посмотрите, сможете ли вы найти и удалить его.

1 голос
/ 25 ноября 2014

Если вы компилируете с флагом "-g", удалите его.

1 голос
/ 22 марта 2011

Вы компилируете через XCode? GCC не создает файлы .dSYM, XCode запускает dsyumutil для их генерации. В моем (устаревшем) XCode 3.2.3 в разделе «Настройки проекта», «Параметры сборки» -> «Формат отладочной информации» вы можете выбрать «DWARF с файлом dSYM» или просто «DWARF». Последнее не должно приводить к получению dSYM.

Однако обратите внимание, что с помощью набора инструментов Apple DWARF находится в файлах .o и не связывается с окончательным двоичным файлом. (GDB знает, как его найти, но ему нужны файлы .o, расположенные на диске.) Если вы намереваетесь отправить двоичные файлы кому-то другому, вам действительно нужно создать dSYM для отправки их вместе с двоичным файлом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...