[英]Swift Package Manager “Undefined symbols for architecture x86_64” from command line
[英]PDFKit symbols missing from Swift Package error
我正在嘗試構建一個依賴於框架的 swift package,但下游框架拋出錯誤。
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_PDFDocument", referenced from:
objc-class-ref in Slice.swift.o
objc-class-ref in Utility.swift.o
"_OBJC_CLASS_$_PDFPage", referenced from:
objc-class-ref in Slice.swift.o
objc-class-ref in Utility.swift.o
ld: symbol(s) not found for architecture x86_64
下游框架可以獨立構建,但是當它作為依賴項添加到其他東西時,它會很痛苦。
iOS 或 macOS SDK 中的“PDFKit”似乎沒有鏈接。 我將如何鏈接?
我嘗試將以下內容添加到我的代碼中以查看它是否會有所作為,但沒有。
#if os(macOS)
import Quartz.PDFKit
#else
import PDFKit
#endif
該錯誤表明 PDFKit 需要在我的 Package.swift 文件中列出...?
編輯
如果我在此處手動 select 'PDFKit' ,則該錯誤將被消除。 但是,這個 Xcode 實例是用
swift package generate-xcodeproj
所以手動改變東西不應該是必要的......
這是我在 Package.swift 中的正確用法
targets: [
.target(
name: "SomeTarget",
dependencies: [ ... ],
linkerSettings: [
.linkedFramework("PDFKit")
]
),
]
請注意,LinkerSetting 同時具有.linkedFramework(..)
和.linkedLibrary(..)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.