У меня следующая структура директории:
src
+-- lib1
+-- lib1.h
+-- lib2
+-- lib2.h
И lib1
, и lib2
будут распространены (установлены). lib2
использует lib1
, поэтому он требует некоторых включений:
#include "../lib1/lib1.h" // 1
#include "lib1/lib1.h" // 2
#include <lib1/lib1.h> // 3
(1) - прямой путь, но он очень негибкий. (2) - это то, что я использую в настоящее время, но система сборки должна знать, что src
необходимо добавить в путь включения. (3) кажется мне лучшим в аспекте распределения , потому что тогда можно предположить, что заголовки находятся в стандартном месте, но для меня не слишком очевидно, как система сборки обрабатывает это (в данном случае , lib1
необходимо установить перед компиляцией lib2
).
Какой рекомендуемый способ?