コードを含むいくつかのディレクトリに分割されたプロジェクト (ライブラリ) があります。プロジェクトのルート ディレクトリにあるヘッダー ファイルを g++ で検索したいので、複数のソース ファイル間で同じヘッダー ファイルの異なるインクルード パスを回避できます。
主に、root/ディレクトリにはサブディレクトリA/と がB/ありC/、そのすべてに.hppと.cppファイルが含まれています。A の一部のソース ファイルにfile.hpp、B にあった を含めたい場合は、次のようにする必要があります#include "../B/file.hpp"。C にあった別のソース ファイルについても同じです。ただし、A 自体に必要なファイルを含むサブディレクトリがある場合file.hpp、一貫性がなく、ファイルを移動することにした場合にエラーが発生します (インクルード パスが になるため"../../B/file.hpp")。
また、これは の外部にある他のプロジェクトからも機能する必要がありますroot/。すべてのヘッダー ファイルをデフォルトの検索ディレクトリに手動でコピーするオプションがあることは既に知っていますが、説明した方法でこれを行いたいと思います。
編集:ライブラリを使用するすべてのプログラムは、g++ prog.cpp lib.a -o prog. これは、g++ のインクルード パスを永続的に設定することを意味します。