gpt4 book ai didi

objective-c - 错误 : using bridging headers with framework targets is unsupported

转载 作者:行者123 更新时间:2023-12-05 05:23:44 27 4
gpt4 key购买 nike

我有一个 Objective C Cocoa Framework我想用 Swift文件在我的framework但我添加了一个 Bridging Header名称为 <Project-name>-Swift.h 的文件线。但是,当我运行它时,输出是:

:0: error: using bridging headers with framework targets is unsupported

最佳答案

umbrella 框架解决

  • 项目的桥接头

  • 框架的伞形文件


这是一个例子:

需要两个文件

fisherWebP-umbrella.h

&

fisherWebP.modulemap

111

放在哪里

00

在 fisherWebP.modulemap 中:

framework module Kingfisher{
umbrella header "fisherWebP-umbrella.h"

export *
module * { export * }
}

在 fisherWebP-umbrella.h 中

#ifdef __OBJC__
#import <UIKit/UIKit.h>
#else
#ifndef FOUNDATION_EXPORT
#if defined(__cplusplus)
#define FOUNDATION_EXPORT extern "C"
#else
#define FOUNDATION_EXPORT extern
#endif
#endif
#endif



#import "demux.h"
#import "mux.h"
#import "decode.h"
// what you need

在 Xcode 中,

你需要 fisherWebP-umbrella.h

不是 fisherWebP.modulemap

00099

然后设置fisherWebP-umbrella.h

settings , Packaging Options,

999

附言:

你需要将 fisherWebP-umbrella.h 设置为 public

99999

在 fisherWebP-umbrella.h 中导入的文件也应设置为公开。

如:demux.h

888

递归地执行此操作。

PPS:

OTHER_SWIFT_FLAGS 设置为 -Xcc -Wno-error=non-modular-include-in-framework-module 禁止快速导入错误。

( 在框架模块中包含非模块化 header )

关于objective-c - 错误 : using bridging headers with framework targets is unsupported,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36771596/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com