从Objective-C中消耗FFmpeg XCFramework,找不到头文件。

问题描述 投票:2回答:1

我为苹果的平台构建了FFmpeg作为XCFramework。我使用的脚本是 https:/github.comkewlbearFFmpeg-iOS-build-scriptpull147。 来做到这一点。

我现在试图在一个传统的iOSmacOS框架(命名为VideoEditing)内消耗该框架,然后在我的iOS应用(很快就会尝试成为Catalyst)内使用。

VideoEditing 我已经链接到 FFmpeg.xcframework 然后在应用中使用 VideoEditing 我已经链接& 嵌入 FFmpeg.xcframework. 之前我是把FFmpeg作为一个标准的静态库来构建的,然后在内部使用 VideoEditing 在一个Objective-C++包装器中,这样我就可以从Swift中使用它。

在那个Objective-C++文件中,我将导入FFmpeg头文件,如 #import <libswscale/swscale.h> 为了实现这个功能,我必须设置头搜索路径。一旦转换到XCFramework,你应该如何做呢?我试过 @import FFmpeg, #import <FFmpeg/libswscale/swscale.h>, #import <FFmpeg/swscale.h> 以及 #import <libswscale/swscale.h>. 在每一种情况下,我只是得到一个 file not found 错在 import 行。

苹果所有的例子都是在Swift中显示,只是在框架发卖一个模块。如果我是尝试着仍然设置一个头部搜索路径,你现在每个架构有不同的头部。

Overview of contents of XCFramework

objective-c xcode ffmpeg linker-errors xcframework
1个回答
0
投票

试试吧 @import FFmpeg 并设置 Enable Modules (C and Objective C)YES 构建设置中。确保 Link Frameworks Automatically 设置为 YES

© www.soinside.com 2019 - 2024. All rights reserved.