Eclipse C / C ++ (CDT) импортирует файлы в проект - заголовочный файл не найден - включает путь - PullRequest
6 голосов
/ 12 декабря 2011

Я пытаюсь импортировать файлы в проект Eclipse C и скомпилировать его.Процесс сборки не может найти локальные заголовочные файлы.Заголовочные файлы находятся в каталоге src.Как мне отредактировать путь включения в eclipse?Если бы я делал это вручную, я мог бы указать опцию -I в gcc.

Building file: ../src/averaging.c
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/averaging.d" -MT"src/averaging.d" -o"src/averaging.o" "../src/averaging.c"
../src/averaging.c:2:23: fatal error: averaging.h: No such file or directory
compilation terminated.
make: *** [src/averaging.o] Error 1

Ответы [ 2 ]

19 голосов
/ 12 декабря 2011
  1. Щелкните правой кнопкой мыши по проекту и выберите свойства.
  2. Выберите C / C ++ Общие -> Путь и символы.
  3. Выберите вкладку Включает.
  4. На языкахвыберите «GNU C» или любую другую цепочку инструментов компилятора C.
  5. Нажмите кнопку «Добавить ...» и добавьте каталог для включаемых файлов.
  6. Закройте окно свойств и перестройте,Вы должны увидеть новый путь, используемый как -I в процессе сборки.
4 голосов
/ 20 июля 2012

Ничто из того, что я нашел до сих пор, не помогло, среди прочего, добавление пути включения в следующих местах не мне не помогло:

  • Проект -> Свойства -> Общие сведения о C / C ++ -> Пути и символы -> вкладка Включения -> GCC C
  • Проект -> Свойства -> Общие сведения о C / C ++ -> Пути и символы -> вкладка Включения -> GCC C ++
  • Проект -> Свойства -> Сборка C / C ++ -> Настройки: вкладка Настройки инструмента -> Компилятор GCC C ++ -> включает в себя
  • Проект -> Свойства -> Сборка C / C ++ -> Настройки: вкладка Настройки инструмента -> Компилятор GCC C -> включает

Однако добавление пути включения к:

Проект -> Свойства -> Общие сведения о C / C ++ -> Пути и символы -> Включает вкладка -> Сборка

при проверке «добавить ко всем языкам» сработало.

Как ни странно, этот последний вариант выполняет все вышеперечисленное - почему они не работают сами по себе, мне не совсем понятно.

Предполагается, что вы не используете makefile. Если вы это сделаете, то можете забыть об изменениях, перечисленных выше. Eclipse автоматически найдет все необходимые данные, анализируя журналы компилятора. Я думал, что это волшебство, но оно работает следующим образом:

  • Построить все из меню проекта - даже если это удастся, некоторые из ваших файлов могут быть помечены как «сбои» из-за неизвестных символов, поэтому вы должны перейти ко второму шагу:
  • обновить индекс: в окне проекта вы щелкнете правой кнопкой мыши и выберите «Свойства -> Индекс -> Перестроить». Если проект большой, вы увидите прогресс в правом нижнем углу окна затмения.

Я думаю, что описанный выше процесс может быть выполнен по-разному, и затмение может сделать все это само по себе, но для больших проектов ручная обработка, как описано выше, менее отвлекает.

...