Eclipse CDT: Как управлять несколькими функциями main() в одном проекте C++?

Я начинаю разработку проекта, который будет состоять из нескольких модулей. Я проверю каждый из этих модулей с помощью специального тестового стенда, каждый со своей функцией main().
Я хотел бы избежать одного проекта Eclipse для каждого тестового стенда и его функции main().

Я читал о Рабочих наборах, и я искал идею показать только файлы, относящиеся к конкретной тестовой среде в моем проекте.

Однако на этапе сборки Eclipse продолжает создавать все файлы проекта, а не только файлы текущего рабочего набора. Затем у меня возникает ошибка компоновщика из-за нескольких функций main().

Как я могу настроить Eclipse для сборки только файлов рабочего набора?
Есть ли другой способ собрать несколько программ по отдельности в одном проекте, т. Е. Приложение и его компоненты для тестирования?

1 ответ

Решение

В Eclipse CDT можно работать с несколькими основными функциями, написав собственный make-файл. Это потенциальное решение для проектов C/C++, связанных, например, с основным приложением и его тестовыми стендами.

Смотрите здесь, как указать пользовательский make-файл в Eclipse.
Затем определите основное правило (см. Документацию по make-файлу), создающее все ваше приложение (без тестовых наборов), и определите одно дополнительное правило для каждого из ваших тестовых наборов (с его компонентом), которые будут построены.
Подводя итог: определите одно правило в вашем make-файле для каждой функции main, создавая main и ее зависимости.

Другие вопросы по тегам