2010-04-08 12 views
11

Skonfigurowałem CEDET dla emacs po Alex article (świetnie!). Teraz pytania:Emacs, Cedet i semantyczna

  1. Mam generowane GTAGS GNU globalny moim /usr/include, jak mogę sprawdzić, czy semantyczne korzysta GTAGS?
  2. Czy mogę przechowywać GTAGS w innym katalogu i poinstruować semantyczną, aby używała tego katalogu?
  3. W źródłach C/C++, zakończenie instrukcji include (z nagłówków systemu ) nie zawiera wszystkich dostępnych nagłówków. Ok, to jest głupie problemem .. ale kojarzy mi się coś nie działa prawo

Odpowiedz

16

Można użyć polecenia:

M-x semantic-c-describe-environment RET 

aby dowiedzieć się o swoje zawierać ścieżkę i ustawienia makr CPP.

Aby przetestować GNU światowego zużycia, można użyć:

M-x semanticdb-test-gnu-global RET printf RET 

aby wyszukać "printf" w w jakimś projekcie. Ponieważ twój projekt (może w/home/you/myproject) nie zawiera printf, to się nie powiedzie, ale jeśli otworzyłeś plik w/usr/include i wykonałeś to samo polecenie, to mam nadzieję, że rozpoznasz printf.

sposób bardziej ogólny, aby zapytać o GNU Globalna jest z:

M-x cedet-gnu-global-version-check RET 

To wszystko powiedział, wsparcie GNU Global jest najlepszy w sytuacjach, gdy chcesz mieć wiele, wiele wstępnie przetworzone pliki, do których dostęp rzadko . Po jednorazowym dostępie do nagłówka (jak w przypadku printf), baza danych GNU Global nie będzie już używana, ponieważ zostanie utworzona odpowiednia baza danych semantycznych. Jest to konieczne, ponieważ GNU Global nie dostarcza wystarczających informacji, aby wykonać inteligentne zakończenie.