2017-06-25 11 views
0

macOSとiOSの共通のXcodeプロジェクトを構築しようとしています。私のプロジェクトのディレクトリ構造は、ビルドがDuplicate interface definition for class 'AAPLViewController'を与えるiOSまたはmacOSプロジェクト:ViewControllerのインターフェイス定義が重複しています

MyApp 
    Common 
    AAPLAppDelegate.h 
    AAPLAppDelegate.mm 
    AAPLRenderer.h 
    AAPLRenderer.mm 
    MyApp_iOS 
    AAPLViewController.h 
    AAPLViewController.mm 
    main.m 
    MyApp_macOS 
    AAPLViewController.h 
    AAPLViewController.mm 
    main.m 

です。

私はAAPLViewController.hでビルドフェーズを追加した - >ヘッダ対応macOSiOSスキームの

私はMyApp_iOSMyApp_macOSというフォルダ内のすべてのファイルに対して、対応するmacOSiOSを割り当てました。

私のプロジェクトとMacOSとiOSプロジェクトを比較しようとしましたが、エラーを回避する手がかりが見つかりませんでした。

hereはそれのgit repoです。 macOSコードはまだ完成していませんが、上記のエラーがなくてもiOSターゲットを構築する必要があります。

+0

これらのファイルが含まれているターゲットを確認しましたか? – Maurice

+0

ターゲットにファイルを含める方法はわかりませんが、Xcodeの右側のペインにある各ファイルのターゲットメンバーシップを割り当てました。 'Common'フォルダ内の全てのファイルに' 'MyApp_macOS''のファイルがチェックされ、' 'MacOS''のターゲットがチェックされ、' MyApp_iOS''のファイルは '' MyOS_macOS''の右側のペインにある '' Target Membership''セクションに '' iOS''ターゲットがチェックされています。 Xcode。 – neckTwi

+0

ええ、これらの誤って割り当てられていないことを確認してください。何も見つからない場合は、プロジェクトをクリーニングしてください。キャッシュされたファイルの中には、エラーを投げているものがあります。 – Maurice

答えて

1

ヘッダー検索パスを正しく設定する必要があります。まず、ALWAYS_SEARCH_USER_PATHSYESに設定します。それが動作しない場合 - 必要なヘッダだけをUSER_HEADER_SEARCH_PATHSの設定に追加してください。

enter image description here

+0

あなたのプロジェクトでは、 'ALWAYS_SEARCH_USER_PATHS = YES'を追加し、シンボルの欠落に関するリンカエラーに直面したので、完全な解決策を提供することはできません。 – toma

+0

リンカエラーがありましたが、うまくいきました。 Appleのサンプルコードは変更しませんでしたが、MacOS上に構築するファイルを再配置してコピーしました。 – neckTwi

+0

'Math'、' ModelLoader'のような論理サブフォルダに対応するオブジェクトを見つける/作成することができないようです。リンクディレクトリを変更する必要がありますか?私はmacOSが初めてです。 – neckTwi

関連する問題