簡體   English   中英

如何在我的Makefile中包含目錄及其所有子目錄的標題?

[英]How can I include headers from a directory and all its subdirectories in my makefile?

我的項目組織如下:

  • 生成文件
  • 建立
    • 對象
    • 應用
  • 包括
    • 子目錄(包含* .h)
    • 子目錄(包含* .h)
  • src
    • 子目錄(包含* .cpp)
    • 子目錄(包含* .cpp)

在我的makefile中,從我當前使用的子目錄中獲取所有* .h:

#includes (.h / .hpp)
INC_DIRS := \
$(wildcard include/*/)

INCLUDE = $(foreach d, $(INC_DIRS), -I$d)

確實有效,並且我能夠編譯良好。 但是我想知道是否有更簡單的方法將所有子目錄包含在單個include語句中。

我正在使用的當前方法對每個子目錄都執行“ -Iinclude / subdirectory”,並且在終端中看起來非常混亂和混亂。

考慮到您的包含路徑方法,這是在makefile中指定它的好方法。

但是,最好不要將所有這些子目錄都放在路徑中,而應在代碼內使用相對路徑。

#include "somedir/thing.h"
#include "somedir2/otherthing.h"

等等。

如果需要,這也將更容易移植到其他構建系統。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM