Xcode 11 (бета) не распознает архитектуру статической библиотеки - PullRequest
4 голосов
/ 06 июня 2019

После волнения по поводу объявлений WWDC в 2019 году я попытался скомпилировать свое существующее приложение iOS для MacOS, используя бета-версию Xcode 11.0.К сожалению, все пошло не так, как ожидалось.

Xcode говорит, что моя статическая библиотека построена для архитектуры :

Сборка для UIKit для Mac, но связанная библиотека 'libssl.a 'был построен для <неизвестно>.Возможно, вам придется ограничить платформы, для которых эта библиотека должна быть связана в целевом редакторе.

Xcode screenshot

Но когда я проверяю свои статические библиотекиЯ вижу, что они содержат требуемую архитектуру x86_64: enter image description here

Я считаю, что эта проблема может быть связана с ошибкой бета-версии XCode.У кого-нибудь есть мысли по этому поводу?

1 Ответ

0 голосов
/ 03 июля 2019

По словам edford , инженера-разработчика программного обеспечения Apple, вам нужно будет создать свои двоичные файлы для платформы iOS, ориентируясь на архитектуру x86_64.Вы можете найти очень поучительное обсуждение здесь: https://forums.developer.apple.com/message/362577.

Что я сделал с моими двоичными файлами, так это построил их для x86_64, используя CFLAGS "-target x86_64-apple-ios13.0-macabi" и вручную указав правильный SDK платформы через параметр -isysroot.Это хорошо работает для OpenSSL и libOpus.

Я считаю, что многие библиотеки придется адаптировать для работы с UIKitForMac , и если вы не хотите ждать, пока команда разработчиков не примет решениечтобы сделать это, вам придется закатать рукава.

Удачи, ребята!

...