Я использую библиотеку со структурой включения, в которой все файлы .h находятся в одном каталоге. Эти файлы .h содержат одну строку, директиву #include
, которая указывает на «настоящий» заголовочный файл в определенных местах исходных папок. Путь #include
в этих файлах является относительным.
Итак, вот пример. Структура каталогов:
/project
/sources
<my .cpp files>
<my .cpp files>
...
/include
/component
foo1.h
foo2.h
/platformA/something/foo1.h
/platformB/somethingelse/foo2.h
/ include / component / foo1.h содержит одну строку кода:
#include "../platformA/something/foo1.h"
/ include / component / foo2.h содержит одну строку кода #include "../platformB/somethingelse/foo2.h"
В моих источниках у меня просто есть:
#include "component/foo1.h"
Путь поиска в заголовке для моего проекта указывает на /include
Теперь XCode 4 может найти component/foo1.h
в /include
, но не может проследить относительный путь включения в этих заголовках и найти 'real' foo1.h в каталоге `/ platformA / кое-что ', и т. д.
Я подозреваю, что это потому, что пути включения в файле foo1.h верхнего уровня относятся к его местоположению, но XCode может относиться к нему как к некоторому другому местоположению (корень проекта или что-то еще)? FWIW, Visual Studio не имеет проблем с идентичной конфигурацией.
Любые идеи о том, что я могу сделать, чтобы исправить это?