Xcode 7 представляет биткод, который является своего рода промежуточным двоичным кодом LLVM, что означает, что серверы Apple могут перекомпилировать мое приложение для разных архитектур без моего участия.
В Lookback я распространяю статическую структуру архива с нашей библиотекой. Похоже, что когда вы строите что-либо, кроме "Build and Archive", биткод фактически не выдается в мою библиотеку, и любой, кто связывается с моей библиотекой в своем приложении и пытается сделать сборку и архив с включенным битовым кодом, получит один из два предупреждения:
-
ld: 'Lookback(Lookback.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target.
(если lib построен с Xcode 6) -
ld: warning: full bitcode bundle could not be generated because 'Lookback(Lookback.o)' was built only with bitcode marker. The library must be generated from Xcode archive build with bitcode enabled (Xcode setting ENABLE_BITCODE)
(если lib построен с Xcode 7 с нормальной xcodebuild)
У меня есть сборка script, которая строит универсальный двоичный файл device + simulator, поэтому я не могу использовать Build и Archive, но вместо этого я запускаю xcodebuild
из командной строки из моего script. Как я могу сделать xcodebuild
создать надлежащую библиотеку с поддержкой битового кода?