2010-06-01 6 views
15

Problem, który widzę, polega na tym, że w preferencjach symbole zdefiniowane w C/C++ dla różnych konfiguracji/obiektów docelowych nie pojawiają się w kodzie kolorowanie.Edytor Eclipse/CDT nie odbiera symboli zdefiniowanych w projekcie pod względem kolorowania, jeśli pominięto sekcje

Kiedy zmieniam konfigurację aktywnego kompilacji w menu projektu, oczekiwałbym kolorowania kodu edytora &, aby odebrać symbole z ustawień projektu, ale wydaje się, że tylko podnosi on symbole jednego z celów.

Czy jest jakiś sposób na kolorowanie kodu ifdef'ed zgodnie z konfiguracją aktywnego kompilowania?

Odpowiedz

0

Spróbuj odtwarzać dzięki opcjom Discovery w swoim projekcie. (Kliknij projekt prawym przyciskiem myszy, wybierz Właściwości, przejdź do Kompilacja C/C++ i wybierz Opcje odnajdywania.)

Konieczne może być przebudowanie projektu po zmianie jego konfiguracji kompilacji, aby Eclipse mógł ponownie uruchomić swoje wykrywanie, lub może być konieczna zmiana opcji wykrywania dla każdej konfiguracji, aby spowodować wygenerowanie różnych wyników. (Niestety, nie jest to obszar CDT, w który grałem).

+0

Wybrane są "automatyczne rozpoznawanie ścieżek i symboli" oraz "Problemy z wykrywaniem ścieżki raportu", a zakres profili wykrywania jest ustawiony na "Na język". To były domyślne ustawienia. Przebudowanie po zmianie aktywnego kompilatora nie ma żadnego wpływu na kolorowanie kodu dla wyłączonych sekcji. – Guy

20

Rozwiązałem ten problem w moim systemie, ustawiając "Okno-> Preferencje-> C/C++ -> Indexer-> Użyj aktywna konfiguracja build”

+1

Uratowałem mój dzień, dzięki. –

+2

Dzięki. Nigdy byśmy tego nie znaleźli. Musiałem odświeżyć coś, żeby to zabrać, ale nie jestem pewien co. Oznacza to, że nie "zabrał" od razu, i próbowałem odbudować indeks i ponowne zastosowanie symboli, ale to nie wydaje się działać. 20 minut później zauważyłem, że działa. Nie jestem pewien, co się stało. Może chcieć wznowić zaćmienie, odświeżyć bufory itp. – phord

+0

Wiem, że to jest sprzeczne z wytycznymi SO, aby podziękować, ale poważnie, dziękuję. Walczyłem z tym przez wieki. – Qix

2

tylko mały dodatek do opcji symbolami: nadać mu wartość 1

co pracował dla mnie jest to:

  • skopiować nazwę zdefiniowania do schowka (powiedzmy, że mamy : #ifdef DBG_TYP_1)
  • wybierz projekt w Eksploratorze projektu
  • przejść do - Project-> Ustawienia-> C/C++ General-> Ścieżka i symbole
  • w "# Symbole" Zakładka
  • dodać symbol DBG_TYP_1 o wartości 1

dzięki za porady!

+0

Mój pierwotny projekt nie miał karty symboli i po prostu nie mogłem wykonać tego w żaden inny sposób.Stworzyłem nowy projekt i tym razem wybrane ustawienia GCC, które dały mi kartę symboli. Ten mechanizm działał dobrze dla mnie. –

4

W odpowiedzi na komentarz Phorda. Po zmianie ustawienia indeksera na "Użyj aktywnej konfiguracji" musisz zmienić aktywne conf projektu na coś innego, a następnie z powrotem. Następnie podnosi zmiany.

Powiązane problemy