Подтвердить что ты не робот

Eclipse CDT C/С++: включить заголовочный файл из другого проекта

У меня есть два проекта С++ в Eclipse CDT main и общий. В shared у меня есть заголовок calc.h. Я хочу использовать этот заголовок в main, поэтому я сделал следующее:

  • добавлен #include "calc.h в соответствующие файлы в main
  • В основном properties -> Project references я проверил общий

Я надеялся, что это сработает, но при компиляции я получаю fatal error: calc.h: No such file or directory, поэтому ссылка на проект как-то не работает.

Я могу заставить его работать, добавив общую исходную папку main properties->C/C++ Build->Setting->GCC C++Compiler->Includes, но у меня плохое ощущение, что это станет громоздким в крупных проектах более сложные зависимости. Поэтому я надеюсь, что Eclipse справится с этим через ссылки на проекты.

Я что-то упускаю или вручную - единственный способ?

4b9b3361

Ответ 1

Вы правы, это его способ сделать это!

Я использую Eclipse CDT для большого проекта, но я не использую настройки компилятора eclipse. Для использования настроек компилятора CDT есть несколько drawbakcs:

  • Как вы сказали, в большом проекте это громоздко.
  • Если вы хотите скомпилировать проект на платформе, которая не имеет eclipse (при развертывании приложения), это не просто.

Я использую CMake для управления проектами eclipse. Когда я запускаю новый проект, я делаю следующие шаги:

  • В терминале: создайте папку для нового проекта
  • С вашим любимым текстовым редактором (vim, emacs, Text edit, kate...) создайте CMakeLists.txt вашего проекта. Вам не нужно создавать exaustive CMakeLists, только небольшие CMakeLists четыре ваших первых файла.
  • Затем попросите cmake создать проект eclipse благодаря: cmake -G "Eclipse CDT4 - Unix Makefiles"
  • Откройте eclipse и нажмите "Файл- > Импорт" и выберите "Общий/Существующий проект в рабочее пространство", затем вы можете выбрать папку, созданную на первом этапе, и ваш проект готов к использованию в eclipse.

CMake - это инструмент настройки компилятора для управления проектами... Если вы этого не знаете, я рекомендую вам его обнаружить.

Приветствия!