В Xcode при компиляции приложения для iOS по проекту сделанному мобильной платформой 8.3.15.62 происходит ошибка:
Undefined symbols for architecture arm64:
"_SecCopyErrorMessageString", referenced from:
a761334670304447d176 in 1cem.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Проблема в платформе или в настройках схемы компиляции?
Функция SecCopyErrorMessageString добавлена SDKs iOS 11.3+.
После обновления macОS с 10.12.6 до 10.14.6 стала доступна новая версия Xcode 10.4. После обновления сборка прошла, но опубликовать приложение всё равно не получилось:
ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSBluetoothAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy [^]).
Функция SecCopyErrorMessageString добавлена SDKs iOS 11.3+.
После обновления macОS с 10.12.6 до 10.14.6 стала доступна новая версия Xcode 10.4. После обновления сборка прошла, но опубликовать приложение всё равно не получилось:
ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSBluetoothAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy [^]).