Как импортировать статическую библиотеку Objective C в Swift Framework?
Я пишу динамические рамки (Proto.framework
) для OS X в Swift. Я хочу включить код из статической библиотеки (libstat.a
), который написан в Задаче С. Вот что я получил:
// Dynamic.swift in Proto.framework
class Dynamic {
func doSomethingWithStat() {
Stat().statThing()
}
}
// Stat.h in libstat.a static library
@interface Stat : NSObject
- (void)statThing;
@end
// Stat.m
@implementation Stat
- (void)statThing {
NSLog(@"OK");
}
@end
В моей цели для Proto.framework я связал ее с libstat.a. Когда я пытаюсь собрать Proto, он, естественно, не компилируется, потому что не может найти определение дляStat().statThing()
, Он не знает символов для моей статической библиотеки. Как мне рассказать об этом?
Для приложений я бы использовал соединительный заголовок и сделал#import <Stat/Stat.h>
, Но компилятор выдает ошибку и говорит мнеBridging headers aren’t allowed in frameworks
, ХОРОШО.
Поэтому я включаю его в свой «зонтик заголовок» (Proto.h
) но это говорит мнеerror: include of non-modular header inside framework module
, ХОРОШО.
Делая мойStat
цель библиотекиDefines module: YES
похоже, не изменит ошибку даже после чистой сборки. Поэтому я не уверен, как это сделать.
Может ли кто-нибудь указать мне правильное направление?