これは私が試したことです。2つのターゲット、同じ名前の2つのヘッダーファイル正しいターゲットに各ヘッダーを使用する方法?
私は2つの別々のディレクトリIRLにヘッダファイルを持っています。それらは同じ名前が付けられていますが、2つの異なる場所にあります。
ターゲットごとに関連するヘッダーファイルのみを含めたいとします。説明を簡単にするために、ヘッダーファイルは "Config.h"と呼ばれます。
だから私は持っている:
$ {} PRODUCT_DIR /Header1/Config.h
と
を$ {} PRODUCT_DIR /Header2/Config.h
これらのファイルは、XcodeのLHSにも2つの異なるグループ(Heade r1とHeader2はIRLフォルダを指します)。
だから、私はXcodeが各ターゲットの正しいフォルダから正しいものを選ぶようにするだけでいいです。
ターゲット2
と
ターゲット2
私は、ターゲットごとにUser Header Search Paths
へのパスを追加しようとしているが、そのはまだ間違ったものを選択します。また、「常にユーザーのパスを検索する」というトグルを試みましたが、これも効果がないようです。
私の質問は、Projectディレクトリにあるためですか?あるいは、LHS上のファイルマネージャのXcodeに入っているので、Xcodeはそれらをビルドフォルダにコピーしていますか?
奇妙なことは、私はあなたがビルドにコピーするためにどのヘッダを選択することができます確信しているのXcodeの以前のバージョンでは
...それはアルファベット順に最後の名前のフォルダからヘッダファイルを選択しているように見えるですフォルダ。
とにかく誰にでも、私はこれを修正してターゲットの適切なヘッダーファイルを選択できるようになりますか?
多くのありがとうございます。
条件付きインポートはどうですか? –
これはバックアップ計画です。 :)しかし、それはこの方法より多くのステップを追加します。私はこれが可能でなければならないと確信しています。 –
1.実際に私は "ヘッダー検索パス"に問題がある理由を理解できません。これらのヘッダーをプロジェクトから除外し、 "**"再帰的検索パスを使用しないようにしてください。 2.私は通常、 "ifdef else"とは異なる "include"を使用します。したがって、どのグローバル変数をどのターゲットに追加しても、それを含めるかどうかを確認することができます(例:ifdef target1 #include "header1.h" else #include "header2.h" endif;)。 – Jlexyc