Для справки, пара вопросов, о которых сообщалось в электронном выпуске , обсуждает причину и решение этой проблемы: # 34 и # 30 .
Короче говоря, эта проблема возникает, когда сборка использует более старую версию MacOSX10.12 SDK, где макросы доступности неправильно указывают на наличие символа kSecAttrKeyTypeECSECPrimeRandom
в целевых версиях ОС, где это не так.Это приводит к тому, что для символа используется неслабое связывание, что фактически делает его обязательным, и, таким образом, вызывает сбой в системах, где он отсутствует (т.е. в системах до 10.12 - Sierra).Для нас решением было использовать исправленную версию MacOSX10.12 SDK, такую как версия, поставляемая с Xcode 8.3.3
, при создании наших выпусков.