Советы по масштабированию CEDET

Я использую CEDET (последняя версия CVS) с несколькими умеренно большими проектами (несколько сотен kLOC каждый, в основном C, но немного C ++) и иногда испытываю длительные паузы, в которых система полностью не отвечает на несколько секунд. Реже он полностью выходит из-под контроля, и мне приходится нажимать на Cg и пытаться переместить курсор или переключиться на другой буфер, чтобы вернуть управление.

Я использую GNU Global для создания тегов для проекты, с которыми я работаю, но иногда это все еще медленное, особенно для semantic-symref-symbol и некоторых переходов, которые, кажется, требуют синтаксического анализа большого количества заголовков и исходных файлов. В некоторых случаях semantic-ia-fast-jump ошибки с сообщением semantic-ia - fast-jump-helper: Тег SomeFunction не имеет информации о буфере , хотя gtags-find-tag находит ее немедленно (в том же проекте), хотя, возможно, в устаревшем месте; это может быть временной ошибкой, обычно semantic-ia-fast-jump надежен.

Я был бы признателен за любые предложения о том, как

  • дросселировать CEDET без потери всего семантического анализа.
  • Узнайте, что заставило CEDET выйти из-под контроля, чтобы я мог исправить определения своего проекта или отправить отчет об ошибке.
  • Определите, почему какой-то семантический анализ не работает.
  • Получите семантику, чтобы кэшировать больше информации, чтобы сделать его более отзывчивым, я у меня много памяти, которую я хотел бы использовать.
  • Управлять GNU Global (создавать и поддерживать в актуальном состоянии) для нескольких проектов в разных местах, включая системные каталоги.
  • Управляйте зависимостями между проектами, которые я настроил с помощью ede-cpp-root-project .
  • Управляйте проектами, которые имеют несколько конфигураций сборки, каждый со своим собственным «config.h» и каталогом сборки.

В статье http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html есть несколько советов, я ищу что-нибудь, кроме этой статьи.

18
задан xpda 18 February 2013 в 15:45
поделиться