2017-06-12 1 views
0

前のquestionから新しいものが発生しました。 2つの異なるフォルダに格納された2つのネイティブTFSプロジェクトライブラリを、Android Studioプロジェクト(別のフォルダに格納されている)にそれぞれ依存させて含める必要があります。単に "libFile.h"の代わりに "../my_lib_path/libFile.h"を指定しないと、ファイルが見つからないというエラーが出ます。しかし、私はそれがTFSプロジェクトであり、ライブラリにたくさんのファイルが含まれているので、すべてのインクルードを変​​更したくない!AndroidスタジオのTFSプロジェクトからのインクルードステートメントを変更しないようにCMakeListsを設定する

ご協力いただきありがとうございます。

+0

あなたのプロジェクトの階層と、あなたの問題に関連する 'CMakeLists.txt'ファイルを記述してください。そして、**一貫した**方法でそれをしてください。 – Tsyvarev

+0

こんにちは@Tsyvarev!階層とCMakeListsは前の質問と同じです(一貫していなければなりません) - それが私がリンクしている理由です。ここでも助けてくれてありがとう! –

+0

これはスタックオーバーフローの要件です。問題の**重要な**情報はすべて**質問ポスト**内にある必要があります。あなたは*追加*情報を提供するためにリンクを使用することができます。 – Tsyvarev

答えて

0

コンパイラがインクルードファイルを検索するために使用するディレクトリに特定のディレクトリを追加します。相対パスは、現在のソースディレクトリに対して相対的なものとして解釈されます。だからあなたは "../my_lib_path/libFile.h"を指定する必要があります。つまり、すべてのインクルードを変​​更する必要があります。そうでない場合は動作しません。

0

@Andy Li-MSFTは絶対に正しいです!私は私のCをコンパイルすることができましたその後

externalNativeBuild { 
     cmake { 
      path "../../whatever_path/my_C_files/CMakeLists.txt" 
     } 
    } 

:同様のプロジェクトで私のために働い何けれども、今、特定のAndroid Studioプロジェクトディレクトリ外のアプリ.gradleファイルに異なる相対CMakeLists.txtのパスを設定することでしたCプロジェクトのインクルードパスを変更することなく、完全にソースを提供します!

関連する問題