#if canImport(CoreImage) 在 swift 包管理器中不起作用

2024-03-15

我制作使用 CoreImage 的库。库支持 Cocoapods、Carthage 和 Swift 包管理器。

当我在 Swift 包管理器中构建它时,我收到此错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_CIFilter", referenced from:
      objc-class-ref in EIP67Code.swift.o
  "_OBJC_CLASS_$_CIImage", referenced from:
      objc-class-ref in EIP67Code.swift.o
ld: symbol(s) not found for architecture x86_64

当我使用#if canImport(CoreImage)

#if canImport(CoreImage)
import CoreImage
extension Web3 {
  public struct EIP67CodeGenerator {
    public static func createImage(from: EIP67Code, scale: Double = 1.0) -> CIImage {
      guard let string = from.toString().addingPercentEncoding(withAllowedCharacters: .urlHostAllowed) else { return CIImage() }
      guard let data = string.data(using: .utf8, allowLossyConversion: false) else { return CIImage() }
      let filter = CIFilter(name: "CIQRCodeGenerator", parameters: ["inputMessage" : data, "inputCorrectionLevel":"L"])
      guard var image = filter?.outputImage else { return CIImage() }
      let transformation = CGAffineTransform(scaleX: CGFloat(scale), y: CGFloat(scale))
      image = image.transformed(by: transformation)
      return image
    }
  }
}
extension Web3.EIP67Code {
  public func toImage(scale: Double = 1.0) -> CIImage {
    return Web3.EIP67CodeGenerator.createImage(from: self, scale: scale)
  }
}
#endif

如果我使用的话效果很好#if os(iOS) || os(tvOS)

但 CoreImage 在 macOS 上工作,所以我仍然需要这段代码,至少对于 carthage/cocoapods


没有找到任何解决方案,所以我只是在 Package.swift 中排除了这个文件

.target(
name: "web3swift",
dependencies: ["BigInt", "secp256k1", "keccak", "scrypt", "PromiseKit", "base58"],
exclude: ["ObjectiveC", "Utils/EIP67Code.swift", "Migration-iOS.swift"]
),
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

#if canImport(CoreImage) 在 swift 包管理器中不起作用 的相关文章

随机推荐

  • 如何从 iOS 11 beta 的 iOS 应用程序打开定位服务?

    if UIDevice currentDevice systemVersion floatValue gt 10 0 NSURL URL NSURL URLWithString App prefs root Privacy path LOC
  • QLineEdit 与 QValidator:无论输入有效性如何,都会对编辑完成做出反应?

    QLineEdit有信号QLineEdit editingFinished当用户完成编辑 例如按 Enter 键 时发出 但是 如果设置了验证器或输入掩码 则editingFinished仅当输入有效时才会发出 但是 无论输入的有效性如何
  • Xcode 14 beta 错误:存储的属性无法用“@available”标记为可能不可用

    当我在 Xcode 14 beta 上运行我的应用程序时 出现此错误 但我不知道如何修复它 存储的属性不能用 available 标记为可能不可用 当我运行 Xcode 13 时 它不会弹出 并且应用程序运行顺利 我在 xcworkspac
  • 确定传递依赖的来源

    我有一个项目 其中使用 sl4j 和 log4j 我最近向我的项目添加了一些新的依赖项 我添加的这些新依赖项之一包括对 logback classic 的传递依赖项 其中包括 sj4j 的另一个绑定 我想摆脱 logback 但我不知道我的
  • 如何在单击“阅读更多”按钮或链接时展开文本?

    我有一个 js 函数 可以在两个文本范围之间切换 一种是类折叠的较小文本 另一种是类展开的全文 这是我的js document ready function expanded hide expanded collapsed click fu
  • 高分表

    我希望在我的 Android 应用程序中添加一个 本地 而不是在线 高分表 并且我想了解解决该问题的最佳方法 我有一个用户列表 现在被保存到文件中并作为 User 对象数组读回 高分需要引用此数据以使用用户的姓名和照片等填充表 对于显示器
  • Google Chart Gannt 避免工具提示

    通过研究 我发现 Gannt Google Chart 上显示的工具提示不可自定义 因此我决定覆盖它 捕获由我的 gannt 矩形触发的悬停事件 如下所示 google visualization events addListener ch
  • 如何触发 IModel.BasicAcks?

    我第一次使用 RabbitMQ 的 NET API 我想出了一个对我来说似乎合理的用例 我想创建发布消息并在消息被确认后执行某些操作的发布者 IModel BasicAcks 事件似乎是了解这一点的好方法 所以 我给出版商写了一封信 pri
  • 识别并计算咒语(每组内的独特事件)

    我正在寻找一种有效的方法来识别时间序列中的咒语 运行 在下图中 前三列是我所拥有的 第四列 spell这就是我想要计算的 我尝试过使用dplyr s lead and lag 但这变得太复杂了 我试过了rle但一无所获 ReprEx df
  • 如何在android中检查3g是否活跃

    我正在尝试检查我的手机中的 3G 是否处于活动状态 之后我必须触发一个 Intent 所以请有人帮助我 提前致谢 我最近编写的应用程序的另一个片段 TelephonyManager telManager telManager Telepho
  • 如何在命令类之外获取命令参数?

    我向doctrine fixtures load 命令添加了自定义选项 现在我想知道如何在自定义装置类中获取此命令选项 class LoadUserData implements FixtureInterface ContainerAwar
  • Matlab 中多个字符串的日期

    我必须从两个字符串生成一个日期 字符串或数字 第一个是日期 第二个是时间 我一定在代码中犯了一些错误 因为结果与源数据的串联不同 DIR4 h datestr strcat DIR1 h DIR2 h dd mm yyyy HH MM SS
  • Django 403 CSRF 令牌丢失或不正确

    我遇到过这个问题 但不幸的是仍然不知道如何解决它 表单呈现完美 我输入信息并收到 CSRF 错误 给出的理由是token missing or incorrect View def eventSell request id c c upda
  • 循环 this.props.children 如何测试它们的类型?

    在自定义 React 组件中的以下代码片段中 React Children map this props children child gt if predicate child do stuff else do other stuff p
  • 简单的网络服务器或网络测试框架

    需要测试一个复杂的 Web 应用程序 该应用程序与基于远程第 3 方 CGI 的 Web 服务进行交互 我计划在虚拟网络服务器中实现一些第三方服务 以便我可以完全控制测试用例 寻找一个简单的 python http web 服务器或框架来模
  • C 结构中的填充量是编译器相关的还是明确定义的?

    是C中的填充量struct在标准或编译器和 或目标体系结构中明确定义 我在标准中找不到答案 它是实现定义的 来自 C99 标准第 6 7 2 1 节 结构体或联合对象的每个非位域成员都按照实现定义的方式对齐 适合其类型的方式 可能还有无名的
  • 使用VBA代码从tr获取所有td

    我有一个 tr 它是一个对象并且有 td 我想获取另一个对象变量 tblTD 中的所有 td 为此我用了Set tblTD tr getelementsbytagname td 但是当我检查 tblTD 的长度时 它显示为 0 有人可以建议
  • C# WPF Webbrowser msHTML - 探索 DOM - 查找元素

    我实际上正在使用 WPF 和 WPF WebBrowser 用 C 开发一个个人项目 我真的需要探索 html DOM 元素 就像我们过去在 javascript 或 php 中所做的那样 在我的主窗口中我有这个变量 private msh
  • 将 2D 箱中分散值的平均值绘制为直方图/十六进制图

    我有 3 维分散数据 x y z 我想将 x 和 y 的箱中 z 的平均值绘制为十六进制图或二维直方图 有没有 matplotlib 函数可以做到这一点 尽管这似乎是一个常见问题 但我只能提出一些非常麻烦的实现 例如 像这样的东西 除了颜色
  • #if canImport(CoreImage) 在 swift 包管理器中不起作用

    我制作使用 CoreImage 的库 库支持 Cocoapods Carthage 和 Swift 包管理器 当我在 Swift 包管理器中构建它时 我收到此错误 Undefined symbols for architecture x86