[英]How to add a Swift package manager as a dynamic library in xcode 13?
包可以生成動態庫,但它們必須明確告訴 Xcode 他們希望將庫制成動態庫。 Realm 不這樣做。 取而代之的是,Realm go 中的人們使用默認行為讓 Xcode 決定是構建 ZA81259CEF8E5E59D26C 還是動態庫。 據我所知,Xcode 總是選擇構建一個 static 庫。
為了解決這個問題,您可以創建自己的 package ,其中包括 Realm package 作為依賴項,並顯式使您的庫動態化。 您可以找到很多教程,向您展示如何制作 package,所以我不會在這里討論。
If you create a package and load the following content into your Package.swift file, then import the package into your project, you will have solved your problem. 我將我的 package 命名為“RealmUmbrella”,但您可以隨意稱呼您的。
import PackageDescription
let package = Package(
name: "RealmUmbrella",
platforms: [.iOS(.v14)],
products: [
.library(
name: "RealmUmbrella",
type: .dynamic,
targets: ["RealmUmbrella"]
),
],
dependencies: [
.package(name: "Realm", url: "https://github.com/realm/realm-cocoa", "10.0.0"..<"11.0.0")
],
targets: [
.target(
name: "RealmUmbrella",
dependencies: [.product(name: "RealmSwift", package: "Realm")]
),
]
)
請注意我在此處指定.dynamic
的方式:
.library(
name: "RealmUmbrella",
type: .dynamic,
targets: ["RealmUmbrella"]
),
一旦我將我的 package 添加到我的項目中,我在項目導航器中單擊項目文件,選擇我的目標,然后導航到“常規”選項卡並向下滾動到“框架、庫和嵌入式內容”。 然后我在我的 package 的“嵌入”列中指定了“嵌入和簽名”。
就是這樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.