Не может включать заголовочный файл - PullRequest
0 голосов
/ 18 января 2011

Здравствуйте, сейчас я пытаюсь перевести проект на другую платформу (первая платформа - Windows, сейчас компания планирует использовать платформу Linux), я использую Eclipse в Windows и Linux, язык - C ++. Назовите проект PostLib и он имеет следующую структуру: PostLib / common, PostLib / inc, PostLib / inc_ext, PostLib / src.

PostLib / общая его часть для контроля утечек памяти и для умного указателя. PostLib / inc PostLib / inc_ext - эта часть для заголовка и PostLib / src для исходного кода. Моя проблема следующая: в настройках проекта я использую PostLib / common, PostLib / inc и PostLib / inc_ext, а также ошибку записи Eclipse: File Def. h (PostLib / inc_ext) не может найти файл p_mem.h (PostLib / common). Как это может быть?

Когда я смотрю свойство по всем направлениям в проекте, я вижу интересную вещь: свойство в каталоге PostLib / inc_ext отличается от всего проекта, в другом свойстве каталога, такое же, как в проекте / Свойство, я имею в виду свойство-> Настройки-> GCC C ++ Compiler-> Каталоги, я пытаюсь добавить путь (PostLib / common), но безрезультатно, ошибка записи Eclipse Файл Def.h (PostLib / inc_ext) не может найти файл p_mem.h (PostLib / common).

1 Ответ

2 голосов
/ 18 января 2011

В системах Linux разделитель каталогов /, а не \!

PostLib\common\p_mem.h - это путь в Windows, но не в Linux. Эквивалент для Linux - PostLib/common/p_mem.h.

Кроме того, пути файловой системы в Linux чувствительны к регистру. p_mem.h отличается от P_Mem.h: убедитесь, что вы использовали правильные символы для файлов и каталогов.

...