Выдает ошибки при использовании статической библиотеки Swift с проектом Objective-C - PullRequest
0 голосов
/ 30 апреля 2018

Мне нужно сделать быструю статическую библиотеку для моего требования. Я сделал Swift статическую библиотеку, которая использует Swift и Obj-C код. Я включил файлы Obj-C через файл моста. Я могу без каких-либо ошибок скомпилировать статическую библиотеку Swift и получить файл libMySwift.a. Я использую Xcode9.3 с Swift4 для компиляции библиотеки.

Я включил libMySwift.a в проект obj-c, а также включил заголовок, совместимый с obj-c, для доступа к моей библиотеке в проекте. Когда я пытаюсь скомпилировать проект, он выдает ниже предупреждение и более 200 ошибок.

Auto-Linking library not found for -lswiftSwiftOnoneSupport
Auto-Linking library not found for -lswiftCore
Auto-Linking library not found for -lswiftQuartzCore
Auto-Linking library not found for -lswiftCoreImage
Auto-Linking library not found for -lswiftCoreGraphics
Auto-Linking library not found for -lswiftObjectiveC
Auto-Linking library not found for -lswiftDispatch
Auto-Linking library not found for -lswiftMetal
Auto-Linking library not found for -lswiftFoundation
Auto-Linking library not found for -lswiftUIKit
Auto-Linking library not found for -lswiftDarwin
Auto-Linking library not found for -lswiftCoreFoundation

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

Ответы [ 3 ]

0 голосов
/ 17 мая 2019

Обновление ответа Алекса:

В моем случае это был проект React-Native после добавления библиотеки Swift Pods. Может быть, только шаг 2 может работать:

  1. Добавление нового файла Swift и заголовка Brigde:

1) File -> New -> File imageFile -> New -> File">

2) Выбрать Swift File imageSwift File">

3) Подтвердите Create Bridging Header enter image description here

  1. Перейдите к Build Settings и установите Always Embed Swift Standard Libraries на YES Always Embed Swift Standard Libraries
0 голосов
/ 07 июля 2019

Этот ответ работал для меня: добавьте $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) к путям поиска в библиотеке.

0 голосов
/ 23 мая 2018

У меня возникла та же ошибка в моем демонстрационном проекте при добавлении первого файла Swift в мой модуль, скомпилированного как статическая библиотека. Для меня решение было простым - просто добавили пустой файл Swift в мой демонстрационный проект, который ранее был только в Objective-C. Это решило все ошибки компоновщика.

...