web-dev-qa-db-ja.com

「埋め込まない」、「埋め込み&記号」、「署名なしに埋め込む」。彼らは何ですか?。彼らは何をやる?

ライブラリを追加するためのXcode11ベータ版の「フレームワーク、ライブラリ、埋め込みコンテンツ」の3つの新しいオプションがあります。

Xcodeライブラリセクションスクリーンショット

enter image description here

誰かが彼らが何をしているのか説明できますか?

63
Shreeram Bhat

Dependency管理 の一部です。[約]

[PRE XCODE V11リンクバイナリと埋め込みバイナリ]

Xcode V11にはFrameworks, Libraries, and Embedded Contentがあります。

埋め込む

Do Not Embed

Static Linker atコンパイル時は、Build Settings -> Framework Search Pathsを使用して静的ライブラリから実行可能オブジェクトファイルにコードをコピーしようとします。

Do Not EmbedBuild Phases -> Link Binary With Librariesのミラーです。 SignCode Sign On Copyのミラーです

このセクションにstatic frameworkを追加しないと、コンパイルエラーが発生します [そのようなモジュールなし]

Embed

それはあなたの最終的なバンドルにフレームワークのコピーを追加します。その後Dynamic linker :dyldロードまたは実行時組み込みフレームワーク@rpathを使用して検索しようとします。[約] /見つけられない場合、エラーが発生します [DYLD:ライブラリー登録済み]

EmbedBuild Phases -> Embed Frameworksのミラーです。ここでは、バンドルのフォルダとSubpathを設定できます。

結果:

  • 静的ライブラリ
  • 静的フレームワーク - 埋め込まないでください
  • 動的フレームワーク - 埋め込む

[リンクを使用して埋め込むとき] /

【語彙】 /

2
yoAlex5