1

まったく重複していません: CMake インクルード パス

私はもともと次のようなディレクトリ構造を持っていました:

root
    src
        foodir
            foo.cpp
            foo.h

ヘッダー ファイルは、独自の並列ディレクトリに移動されました。

root
    src
        foodir
            foo.cpp
    include
        foodir
            foo.h

問題は.. foo.cpp が#include "foo.h"を使用していたところ、現在は#include "foodir/foo.h"(でコンパイルされた-Iinclude) を使用する必要があります。

わかりましたので、それは本当の「問題」ではありませんが、「foodir/foo.h」(たくさんのファイル) の代わりに「foo.h」を保持できれば最高です。cmake を使用して、コンパイラに の対応するサブディレクトリを表示させる方法はありinclude/ますか?

4

2 に答える 2

2

include/foodirコンパイラ検索パスのリストに追加するには、 include_directories. トップレベルの CMakeLists.txt が「ルート」にあると仮定します。

include_directories(${CMAKE_SOURCE_DIR}/include/foodir)
于 2013-10-26T21:33:30.483 に答える