Erreur du plug-in Vim Command-T: impossible de charger l’extension C

J’essaie d’installer le plug-in Command-T.

J’ai compilé vim en suivant les instructions de ce commentaire: Installation de vim avec le support ruby ​​(+ ruby)

Alors maintenant, il y a le drapeau + ruby, mais quand j’essaie d’utiliser le plugin, j’obtiens cette erreur:

command-t.vim could not load the C extension Please see INSTALLATION and TROUBLE-SHOOTING in the help For more information type: :help command-t 

J’ai du rbuy sur mon système:

 > ruby -v > ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] 

suggestions?

Allez dans le répertoire du plugin et lancez la commande suivante:

 rake make 

Il comstack l’extension du plugin dont vous avez besoin.

J’ai rencontré la même erreur mais après avoir lu le manuel un peu plus en profondeur, j’ai trouvé les choses suivantes utiles.

Marqué de la section INSTALLATION dans https://github.com/wincent/Command-T

L’extension C doit alors être construite, ce qui peut être fait à partir du shell. Si vous utilisez un typique | runtimepath | alors les fichiers ont été installés dans ~ / .vim et vous pouvez construire l’extension avec:

  cd ~/.vim/ruby/command-t ruby extconf.rb make 

Vous devez effectuer la construction en utilisant la même version de Ruby que Vim elle-même est liée.

Utilisez-vous RVM ou rbenv? Personnellement, j’utilisais rbenv et MacVim. J’ai eu cette erreur parce que j’essayais d’utiliser Ruby 1.8.7 patch 352 . Je suis revenu au patch rbenv shell system utilisant le rbenv shell system avant d’ exécuter ruby extconf.rb et make , puis tout s’est bien ruby extconf.rb .

Ensuite, vous pouvez restaurer votre shell en utilisant rbenv shell --unset .

Sur Debian Squeeze, j’ai également dû installer la bibliothèque json pour ruby ​​avec apt-get install libjson-ruby1.8

Command-T nécessite un composant compilé. Le message d’erreur suggère que vous n’avez pas suivi complètement les instructions d’installation du plug-in.

Consultez les instructions d’installation sur: https://github.com/wincent/Command-T Recherchez sur cette page l’en-tête “INSTALLATION”. Vous n’avez probablement pas suivi les instructions de ce README officiel. Si vous utilisez RVM, veillez à utiliser le système ruby. Tout cela est noté dans les docs.

Si vous êtes sûr de suivre les instructions sur le projet github , vous devrez peut-être redémarrer vim et le terminal. Je suis tombé sur le même problème et quand j’ai redémarré Vim, cela a finalement fonctionné!

J’ai eu une erreur similaire et essayé rake make comme suggéré dans une des réponses, qui exécute également ruby extconf.rb , j’ai eu l’erreur suivante

 ─$ rake make /usr/bin/ruby2.3 extconf.rb mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h rake aborted! Command failed with status (1): [/usr/bin/ruby2.3 extconf.rb...] /home/shreedhan/.vim/bundle/command-t/Rakefile:84:in `block (2 levels) in ' /home/shreedhan/.vim/bundle/command-t/Rakefile:83:in `chdir' /home/shreedhan/.vim/bundle/command-t/Rakefile:83:in `block in ' Tasks: TOP => make (See full trace by running task with --trace) 

Vous devez installer ruby-devel ou ruby-dev selon que vous avez yum ou apt sur votre dissortingbution.

 yum install ruby-devel 

ou

 $ apt install ruby-dev 

Finalement, après quelques essais et erreurs, j’ai trouvé cette commande dans la FAQ de la commande-t, qui traite d’un problème de Mac OS. Je cours “High Sierra 10.13.4”:

ARCHFLAGS = -Wno-error = argument de ligne de commande inutilisé-hard-error-in-future ruby ​​extconf.rb

Cela semblait générer un Makefile qui exécutait la compilation avec succès. J’ai essayé pas mal de choses, et cette solution me semble un peu compliquée.