- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试构建一个 Swift 包,它包含一个用 C 编写的胖静态库:libndi_advanced_ios.a 来自 NewTek's Apple Advanced NDI SDK .
我无法将预编译库(只有头文件和 .a 二进制包可用)链接到我的 Swift 包。我做了很多研究并尝试了不同的解决方案,但都没有奏效。这是一个快速列表:
xcodebuild -create-xcframework
返回错误 binaries with multiple platforms are not supported
(这个解决方案也在 Swift Forums 上讨论过);.linkedLibrary
在 targets
正如 SPM Documentation 上的建议(即 outdated )给出警告 system packages are deprecated; use system library targets instead
,我什至不记得它是否构建成功;linkerSettings
)没有成功。也许我只是错过了正确的组合。Package.swift
其中包含以下代码:
let package = Package(
name: "swift-ndi",
platforms: [.iOS(.v12)],
products: [
.library(
name: "swift-ndi",
targets: ["swift-ndi"])
],
dependencies: [],
targets: [
.target(name: "CiOSNDI", path: "Libraries"),
.target(
name: "swift-ndi",
dependencies: ["CiOSNDI"]),
.testTarget(
name: "swift-ndiTests",
dependencies: ["swift-ndi"]),
]
)
您可以在
alessionossa/swift-ndi 找到整个项目.
.systemLibrary(name: "CiOSNDI", path: "Libraries/"),
使用此配置:
alessionossa/swift-ndi/tree/systemLibrary ;但我收到这些错误:
NDI_include
实际上是到
/Library/NDI Advanced SDK for Apple/include
的别名/符号链接(symbolic link), 而
NDI_iOS_lib
指向
/Library/NDI Advanced SDK for Apple/lib/iOS
.
Package.swift
后清理构建文件夹.
最佳答案
二进制目标需要用 .binary_target
指定.见docs和示例 here .
包装在 .xcframework
中的静态库示例从文件命令看起来像这样:
$ file GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/GoogleAppMeasurement
GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/GoogleAppMeasurement: Mach-O universal binary with 2 architectures: [arm_v7:current ar archive] [arm64]
GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/GoogleAppMeasurement (for architecture armv7): current ar archive
GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/GoogleAppMeasurement (for architecture arm64): current ar archive
创建
.xcframework
的一种方法文件是使用 Firebase 的
ZipBuilder创建一个
.xcframework
使用 CocoaPods podspec 文件指定的静态库中的文件。
关于ios - 链接到 Swift 包中的胖静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70557329/
我很好奇针对包含 armv7 和 i386 代码(用于模拟器)的通用(胖)库构建是否会增加应用程序分发包的大小,或者设备的构建过程是否会删除 i386 内容并进行调试信息? 最佳答案 如果我没记错的话
我正在尝试将我的对象打包为 64 字节(自行开发的属性),并且我需要保存 getter 和 setter 成员函数。 我真的很喜欢 std::function 但太大了: sizeof(std::fu
如果传递库不是 packaged使用 JAR 任务: By default, jar task in gradle builds an executable jar file from your pr
在Sublime Text编辑器中无法有效搜索问题。当前正在使用该编辑器的最新版本。 在用这些大块命中Ctrl + Shift + FI后,我想导航到下一个文件(在图像1/138中),但我不知道如何操
我正在重新设计旧应用程序——更确切地说是设计新应用程序,我想利用旧应用程序的某些部分在未来变得更有用和可扩展。 旧应用程序是一个厚桌面应用程序,用于处理在文件服务器上共享的数据。 (它使用 DBF 数
我无法为使用 Xcode 10.2+ 构建的通用(胖)框架的模拟器(设备编译成功)编译应用程序。应用程序使用来自 Objective-C 代码的框架。当从为设备构建切换到为模拟器构建时,Xcode 停
我有一个 fat jar 子,我试图在其中获取 Kotlin 的实例 ScriptEngine . 出于调试目的,我遍历可用的脚本引擎工厂并获取引擎。 val scriptEngineManager
我是一名优秀的程序员,十分优秀!