2016-12-14 7 views
1

Objective-CでCocoa Touch静的ライブラリを作成しています。それはCocoapodsを介して配布され、それを使用している開発者はSwiftでもこれを実行できるはずです。 私のテストプロジェクトでは、Objective-Cでライブラリを完全に使うことができますが、Swiftではコンパイラエラー:No such module MyLibraryが発生します。Objective-Cフレームワークを公開する

Defines Moduleは、YESに設定されています。その後、あなたはあなたのObjective-Cライブラリをインポートすることができます

File > New > File... (macOS app for your case)

add pch file

:既存の迅速なプロジェクトでPCHファイルを実装するにはhttps://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html

+1

メインフレームワークヘッダーを含む.pchファイルを追加しましたか? – guiltance

+0

いいえ、この問題を解決する必要がありますか?これに関するリンクや文書がありますか? – melbic

答えて

0

:アップルここでガイドによると、それは1つがしなければならないだけのことですあなたのPCHファイルでこの(test.pchが私のファイルです)

#ifndef test_pch 
#define test_pch 

#import <YourLib/YourLibMainClass.h> 

// Include any system framework and library headers here that should be included in all compilation units. 
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file. 

#endif /* test_pch */ 

のように今、あなたは、PCHファイルがあるプロジェクトを伝える必要があります。 ターゲット構築設定に行き、「プレフィックスヘッダー」を検索します。 アップルLLVM 8.0で

- 言語セクションでは、プレフィックスヘッダのためにあなたが迅速ファイルにライブラリをインポートすることができますキー(自分のPCHファイルのプロジェクトパスに注意してください)

enter image description here

を値を追加

import YouLibrary 
+1

あなたが何を意味しているのか分かりましたが、それは私の質問ではありませんでした。 私はフレームワークを書いています。 .pchファイルの作成に誰も使用しているとは言いません。 – melbic

+0

@melbic - http://stackoverflow.com/questions/32459678/how-to-mix-swift-and-objective-c-in-a-pod-lib – johndpope

関連する問題