Question

Ma configuration de test: Intel Dual Core 3GHz, Windows XP 32 bits, EMACS 23.2.1, Cedet v1.0 (compilé octet comme décrit dans les documents d'installation).

Le fichier EMACS INIT ne se compose que de ces quatre lignes:

(load "~/vendor/cedet/common/cedet.el")
(semantic-load-enable-code-helpers)
(require 'semantic-ia)
(global-ede-mode 1)

Lors de l'ouverture d'un fichier C ++ qui inclut une seule fonction, remplissant cette fonction via (sémantique-ia-complete-symbol) ne se termine qu'après un décalage notable, même après des essais répétés.

Évaluation semantic-analyze-current-context montre que la lenteur est causée par l'analyseur sémantique.

Voici le Fichier de résultats ELP Après avoir coulé semantic-elp-analyze Plusieurs fois, sans changer le point dans le tampon. Le temps total écoulé concerne toujours 0,6 seconde.

Quand j'ajoute une déclaration inclue, comme #include <stdio.h>, les horaires changent en 2,5 secondes. Voici un correspondant Résultat ELP.

Les mêmes repères ne prennent jamais plus de 0,1 seconde dans mon environnement Linux. (Même matériel, Debian's 23.1 Emacs, Cedet v1.0)

Des idées, qu'est-ce qui pourrait ne pas mal avec ma configuration?

Était-ce utile?

La solution

Il s'est avéré que la compilation de Cedet a lancé un tas d'erreurs que je n'ai pas remarquées au début:

semantic-analyze.el:178:1:Error: Symbol's value as variable is void: filename

Qui a provoqué le ralentissement en laissant 81 fichiers non compilés.

Google suggère Cette erreur peut être liée aux versions EMACS plus récentes que 23.1.

Si vous utilisez Cedet-Build.el pour compiler le CEDET, essayez la solution de contournement suivante:

Add (setq filename nil) to the beginning of cedet-build.el
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top