Предупреждения и ошибки компоновщика DBAccess с использованием Xcode 7 и cocoapods
Я успешно использую DBAccess в качестве кокоапода в своем проекте в течение нескольких месяцев. За последние несколько недель в моей цепочке инструментов произошло много изменений, и теперь моя сборка не удалась. pod install указывает, что установлен DBAccess (1.6.9). Версия XCode 7.0.1. версия - 0.39.0.
При сборке моего приложения в Xcode я вижу предупреждение компоновщика: ld: warning: каталог не найден для опции '-F/proj/DBAccess'
фреймворк фактически живет в /proj/Pods/DBAccess
Это предупреждение не является проблемой (кроме, возможно, указания на неправильную установку), и я могу нормально создавать, запускать и тестировать приложение.
Однако, когда я пытаюсь заархивировать приложение для отправки в магазин приложений, используя CLI jenkins / fastlane / pilot / xcode, я получаю следующую ошибку компоновщика:
Не удалось сгенерировать ld: набор битовых кодов, поскольку '/Users/jenkins/.jenkins/jobs/proj/workspace/Pods/DBAccess/DBAccess.framework/DBAccess' был создан без полного битового кода. Все объектные файлы и библиотеки для битового кода должны быть сгенерированы из Xcode Archive или Install build для архитектуры armv7
Вот вызов командной строки, который Дженкинс сделал, чтобы прийти к этой ошибке: установить -o pipefail && xcodebuild -workspace './proj.xcworkspace' -scheme 'proj' -destination 'generic/platform=iOS' -archivePath '/Users/jenkins/ Библиотека / Разработчик /Xcode/Archives/2015-10-12/proj 2015-10-12 16.33.37.xcarchive'архив | tee '/Users/jenkins/Library/Logs/gym/proj.log' | xcpretty
Эта ошибка поставила меня в тупик, потому что веб-сайт DBAccess утверждает, что 1.6.9 был создан для решения этой проблемы ( http://www.db-access.org/downloads). У кого-нибудь еще есть проблемы с DBAccess, установленным с cocoapods?
2 ответа
Извините за эту проблему, теперь она исправлена в 1.6.11. Мы добавили исправление для XCode 7, но XCode 7.0.1 сломал это снова. Поэтому нам пришлось выяснить, как скомпилировать статическую библиотеку с битовым кодом внутри, так как добавить флаг ENABLE_BITCODE было не так просто.
DBAccess 1.6.11 сейчас работает на CocoaPods.
ПРИМЕЧАНИЕ. Если кому-то интересно, необходимо добавить две вещи для компиляции инфраструктуры, включающей битовый код:
-fembed-bitcode-marker -fembed-bitcode
Я начал использовать DBAccess (1.6.9) с Xcode(7.0.1). версия - 0.38.2.
ld: битовый код не может быть сгенерирован
DBAccess закрыт бесплатно.
Таким образом, вы должны включить Bitcode превратить в NO.
Выберите POJECT > Настройки сборки> Параметры сборки> Включить битовый код
Значением по умолчанию является Да. Так что превращайся в НЕТ.