Анализатор ошибок Eclipse CDT для внешнего компоновщика на основе gcc - PullRequest
6 голосов
/ 17 марта 2010

Я понимаю, что в CDT 7 будет включен анализатор ошибок регулярного выражения, но сейчас я использую CDT 6.

У меня есть внешний компоновщик CDT, который просто вызывает сценарий оболочки для запуска моей сборки (на основе Jam). Сборка использует GCC, а ошибки и предупреждения передаются в представление консоли, но, конечно, анализатор ошибок не просматривает его, поэтому в моем представлении «Проблемы» ничего не отображается.

Есть ли способ настроить CDT для использования его сканера GCC на моей консоли, чтобы заполнить представление «Проблемы»? Парсер GCC включен, он просто не смотрит на мой вывод.

1 Ответ

3 голосов
/ 15 марта 2011

Я не уверен, что этот вопрос все еще актуален, но для заполнения представления «Проблемы» должно работать следующее решение:

1) Создать пустой CD-файл C ++ в CDT (назовем его solution1)

2) В контекстном меню проекта (в Project Explorer) выберите «Импорт ...»

3) В мастере «Импорт» выберите «Общие / Файловая система», нажмите «Далее» и выберите исходный каталог. К сожалению, CDT 6 не позволяет создавать ссылки на файлы, такие как CDT 7. Вместо этого он будет копировать все источники в расположение проекта в рабочей области. Поэтому самый верхний каталог, который вы импортируете, должен содержать Jamroot. Не забудьте установить все флажки для всех необходимых файлов и папок в журнале импорта.

В качестве более элегантной альтернативы для импорта вы можете просто создать папку в проекте eclipse и связать ее с исходной папкой, содержащей необходимый Jamfile - спасибо Vanuan за подсказку.

После добавления файлов откройте свойства проекта и внесите следующие изменения:

4) Убедитесь, что на странице "Построители" выбраны CDT Builder и Scanner Configuration Builder. Для свойств CDT Builder я рекомендую выбрать все параметры, кроме «Во время автоматической сборки»

5) На странице «Сборка C / C ++» снимите флажок «Использовать команду сборки по умолчанию» и вставьте что-то вроде «$ {HOME} /boost.build/bin/bjam». В «Build Location» вы должны поместить папку с необходимым jamfile, который вы хотите построить из вашей иерархии проекта. Например, "${workspace_loc:/solution1/Server}"

6) Перейдите на вкладку «Поведение» и добавьте необходимые параметры bjam для параметров «Построение (инкремент)» и «Очистка». Снимите флажок «Построить при сохранении ресурсов (Auto Build)»

7) В «C / C ++ Build / Settings / Error Parsers» выберите все необходимые парсеры. Все остальное следует оставить в состоянии по умолчанию.

После этого вам следует хорошо идти.

Если у вас есть несколько проектов в вашем исходном дереве, и вы использовали подход «Импорт», имеет смысл создать отдельную конфигурацию сборки для каждого проекта и указать для них соответствующие значения «Местоположение сборки». Я использую CDT 7 и, поскольку он позволяет импортировать ссылки на исходные папки вместо создания физических копий, я просто создаю отдельный проект eclipse в рабочей области для каждого из целевых Jamfiles. В CDT 6 это также будет работать, если вы добавили связанную папку вместо импорта источников.

...