Question

Je Emacs Starter Kit installé. Lorsque je tente d'installer et de BCE terme, il ne fonctionne pas.
Qu'est-ce qui ne va pas? Comment faire fonctionner la BCE avec Emacs Starter Kit?

BCE Installation

J'ai essayé deux façons:

  1. Ajout ecb à la liste de my-packages comme décrit
  2. Installation ecb avec commande list-packages

Les deux méthodes donnent le même résultat. Lors de l'installation, je me suis beaucoup d'avertissements comme

In ecb-test-with-original-advice-set:
ecb-advice-test.el:122:16:Warning: reference to free variable `ecb-version'

In ecb-analyse-jump-to-tag:
ecb-analyse.el:443:24:Warning: `interactive-p' is an obsolete function (as of
23.2); use `called-interactively-p' instead.

Taille totale du fichier est de 807 lignes et je ne sais pas comment l'ajouter en gardant ici le poste lisible:)

BCE utilisation

Quand je tente de démarrer la BCE en ajoutant (require 'ecb)
à ~/.emacs.d/$USER.el l'erreur suivante se produit à démarrer Emacs:

File error: Cannot open load file, ecb

La load-path variable ne contient pas le chemin d'accès aux fichiers ECB. Quand je commence Emacs sans (require 'ecb) il n'y a pas d'erreurs et load-path contiennent la chaîne
"/home/maksim/.emacs.d/elpa/ecb-2.40". Ajout de la ligne suivante

(add-to-list 'load-path (expand-file-name "~/.emacs.d/elpa/ecb-2.40"))

fait Emacs démarre sans erreur, mais la BCE fonctionne toujours pas et ecb-activate agit de la manière décrite ci-dessous.

Si je tente de démarrer la BCE en appelant ecb-activate Je vois ce qui suit dans la mémoire tampon de *Messages*:

ECB 2.40 uses CEDET 1.0 (contains semantic 2.0, eieio 1.3, speedbar <unknown
version>).
ecb-activate-internal: Symbol's value as variable is void: stack-trace-on-error

Si j'ajoute la ligne suivante à ~/.emacs.d/$USER.el

(setq stack-trace-on-error t)

puis répond ecb-activate les éléments suivants

ECB 2.40 uses CEDET 1.0 (contains semantic 2.0, eieio 1.3, speedbar <unknown
version>).
All requirements for ECB 2.40 fulfilled - Enjoy it!
The ECB is now deactivated.
ecb-clean-up-after-activation-failure: ECB 2.40: Errors during the basic setup
of ECB. (error-type: void-function, error-data:
(ecb-enable-own-temp-buffer-show-futition))

Informations sur la version

  • GNU Emacs 24.0.92.1 (x86_64-pc-linux-gnu, GTK + Version 2.22.0)
    de 2011-12-06 sur pluot, modifié par Debian
  • emacs-démarreur-kit 2.0.3
  • bce 2,40
Était-ce utile?

La solution

J'avais les mêmes problèmes que vous, je viens de l'a résolu, voici mes spécifications:

  • GNU Emacs 24.0.93.1 (j'utilise la version GTK instantané sur Ubuntu 11.10)
  • kit de démarrage 2.0.3
  • CEDET 1.0pre7 (il est intégré dans)
  • BCE dernière de CVS repo (http://ecb.cvs.sourceforge.net/ecb/ecb/)

De plus, je l'ai fait comme @ user1150335 dit avec le numéro de version Je n'ai pas besoin de changer le numéro de version que @ user1150335 dit. Permettez-moi de savoir si je l'ai raté quelque chose ou vous avez besoin quelque chose de plus sur la configuration.

Autres conseils

  1. add (Setq version erreur nulle) dans bce-uprade.el
    ce qui signifie aucune vérification de version de cedet.

  2. correct (ECB-enable-propre temp-tampon-show-futition) à (ECB-enable-propre temp-tampon-show-fonction) dans ecb.el

  3. Supprimer ecb.elc et ECB-upgrade.elc

  4. M-x-octet de compilation fichier ecb.el et ECB-upgrade.el

  5. add (setq stack-trace-on-error t) dans .emacs ou .emacs.d / init.el

  6. M-x ECB-actif

Essayez de modifier ECB-cedet-version-max requise variable (il est dans bce-cedet-wrapper.el). A travaillé pour moi. Mise à jour: Je ne sais pas quelle version de cedet que vous utilisez. Mais il y a un exemple que je l'ai fait, étape par étape:

  1. (setq stack-trace sur erreur t) (l'ajouter à votre fichier .emacs)
  2. Ensuite, vous devriez trouver une variable ECB-cedet-requis-version-max. Dans ma version de cedet il est dans bce-cedet-wrapper.el: 83
  3. Pour contourner la vérification de la version, il devrait être plus grand que cedet actuellement installé. (Defconst ECB-cedet-requis-version-max « (1 2 4 9) Est-ce que faire l'affaire pour toutes les versions actuellement disponibles.
  4. C'est tout. Redémarrez emacs pour le tester.

Pour une raison quelconque pile trace sur erreur doit être vrai même après correction. Je l'ai testé avec GNU Emacs 24.0.92.1, CEDET Version: 1.1beta (dernière caisse de bzr), et le dernier de la caisse de bce cvs. Je ne l'utilise pas vraiment de nos jours bce, mais j'ai essayé bce octets décompiler, ECB-Activate, bce désactivent, des sauts aux fenêtres (méthodes, BCE dirs, sources), cpp ouvrir les fichiers elisp. Tout fonctionne très bien.

Vous devez corriger

(ECB-enable-propre temp-tampon-show-futition)

à

(ECB-enable-propre temp-tampon-show-fonction)

dans ecb.el

Il y a une nouvelle branche de la BCE sur github appelé newcedet. Cette version de la BCE est compatible avec les nouvelles versions Emacs et CEDET 1.1 et plus. Il y a aussi sur la liste de diffusion de la BCE à ce sujet.

Installer ecb-snapshot

M-x package-list-packages

et sélectionnez ECB-instantané de celui-ci. Mettez le également sur votre ~ / .emacs.d / $ USER.el

(require 'ecb)
(setq stack-trace-on-error t)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top