Ошибка сегментации: 11 при попытке кодирования .app
Мне не удалось найти определение этой ошибки в отношении кодовой привязки. Я действительно сильно обеспокоен тем, что делать.
Ошибка при попытке выполнить эту командную строку:
codesign -s "Developer ID Application: Name (ID)" -fv --deep Application.app/
Система:
XCode 6.2 на Yosemite 10.10.3
Я переустановил XCode, но все равно не повезло. Это для настольного приложения.
Извините, если это глупый вопрос!
Ответы
Ответ 1
Решение, которое я нашел на форуме Apple, работал у меня: во-первых, запустите следующую команду, чтобы найти свой идентификатор hex ID:
$ security find-identity -v
1) A048017A43F8C9C993128B0101B81CD07049601E "lldb_codesign"
...
Затем вы можете использовать этот шестнадцатеричный идентификатор для подписи:
codesign -s A048017A43F8C9C993128B0101B81CD07049601E /usr/local/bin/gdb
Некоторые другие советы, которые я встретил, отлаживая это:
- Вы должны указать полный путь к двоичному (
/usr/local/bin/gdb
, а не только gdb
). Он не будет смотреть на PATH, я предполагаю по соображениям безопасности.
- Вам нужно запустить код как root, если каталог, в котором находится ваш двоичный файл, не принадлежит пользователю.
Ответ 2
передача --timestamp=none
, похоже, приводит к сбою.
Ответ 3
Я столкнулся с этим в Xcode 8.3.2, когда я случайно попал с дубликатами моих сертификатов подписи. @kristina ответ дал мне подсказку; $ security find-identity -v
показал мне две записи с одинаковыми хэшами. Я исправил это, удалив первый сертификат в списке с этим хешем:
$ sudo security delete-certificate -Z <SHA hash>