2017-10-10 6 views
0

のカスタム場所からの相対リンクされたライブラリを追加します。私のプロジェクトのは、私はすべての外部任意のディレクトリに配置されているスタンドアロンライブラリ(.Aとは.dylibファイル)の数が多い、に対してリンク必要とするプロジェクトをビルドするためにXcodeの9を使用していますXcodeの

私は手動でリンクされたフレームワークとライブラリにすべてのこれらのライブラリを追加する場合、私が構築することができますが、その後、私は、この任意のディレクトリへの相対パスをハードコーディングしています。

リンクフレームワークとライブラリのリストにライブラリを追加、おそらく場所は、ユーザー定義のビルド設定として指定したユーザー定義の場所への相対パスとして、それらを追加する方法はありますか?

具体的には、私はパスを指定する環境変数G3Dを持っています。これらのライブラリはすべて$G3D/build/librariesになっています。しかし、ライブラリにプロジェクトをドラッグ&ドロップして追加した後は、ファイルインスペクタでグループの相対位置、相対位置などを指定することができます。

ライブラリを任意の変数Linked Frameworksのリストから完全に除外し、その他のLinked Flags Build設定を使用してすべてのリンクライブラリを指定すると、それ自体の問題が発生します。例えば

答えて

0

まあ、ビルド設定でごFramework検索パスには、あなたがあなたのユーザ定義のビルド設定を参照するために許可されてい...パスの一部を指定するREALM_PATHというユーザー定義のビルド設定があるとします。

は、その後、あなたのフレームワーク検索パスビルド設定では、あなたは、いくつかのパスを追加することができますし、その周りに$ {}を置くことによってREALM_PATHを挿入します。例えば。

${PROJECT_DIR}/../../External/ThirdParty/submodules/${REALM_PATH} 
+0

しかし、私はリンクされたフレームワークとライブラリに項目を追加し、それは私が内蔵されたフレームワークまたは任意の場所を選択することができますそのピッカーコントロールを上げたときに、それは今表示し、私がしているライブラリやフレームワークを選択できますそのユーザー定義の設定のためにのみ、フレームワークの検索パスに? – algal

+0

私はそうは思わない。私は先週同じ状況で自分自身を見つけました。私は、フレームワークをプロジェクトナビゲータペインからLinked Frameworks and Librariesビルドフェーズに直接ドラッグするだけです。それはうまくいった。 – Smartcat

+0

しかしこれはあなたのプロジェクトを定義していないので、例えばREALM_PATHルートのパスではなく、それらのライブラリへのプロジェクト相対パスがハードコードされていますか? – algal

関連する問題