4

I've been using the CoqIDE plugin for Vim on Linux machines for editing Coq files. Now I'm trying to install it on Windows 8. But when I try to source the plugin, I get

Your vim doesn't support Perl. Install it before using CoqIDE mode.

which is strange, because with :version I clearly see +perl/dyn included. Is this different from the +perl that I need?

I heard somewhere that you need to have Perl installed before Vim to get a Perl-enabled Vim, so I tried that as well. I uninstalled Vim, installed Strawberry Perl 5.18.2.2 (64bit), and reinstalled Vim. Still the same problem.

If the solution involves manually compiling binaries, I would really appreciate detailed instructions as I don't have any experience with it.

user287393
  • 1,221
  • 8
  • 13

2 Answers2

4

+perl/dyn just specifies that Vim has been compiled with dynamic Perl support; it doesn't yet check that the Perl library can be loaded successfully. To do that, try executing a Perl command, e.g.:

:perl VIM::Msg("Hello")

This probably yields on your system:

E370: Could not load library perl510.dll
Sorry, this command is disabled: the Perl library could not be loaded.

Next, you'd then have to investigate whether a proper Perl version has been installed and the DLL is accessible (though the PATH).

Ingo Karkat
  • 167,457
  • 16
  • 250
  • 324
  • You're right. Thanks! Could you expand a bit more on what are the proper versions of Perl for Vim? I'm thinking that the issue might be 32 bit vs. 64 bit compatibility. (I installed Vim with the gvim74.exe installer.) – user287393 Jul 21 '14 at 11:41
  • The versions must match (`perl510.dll` -> Perl 5.10), and the bitness, yes. With the default installer, you have a 32 bit Vim. – Ingo Karkat Jul 21 '14 at 11:51
  • @IngoKarkat Mine yields `E370: Could not load library perl522.dll` – Jonathan Komar Jun 20 '16 at 07:06
  • What if we're on a *nix system and we get an error about not being able to load the `Perl_sv_2nv_flags` library function? – Alexej Magura May 12 '17 at 20:45
  • @AlexejMagura Looks like a library mismatch. If both Vim and Perl have been installed via package manager, that should not happen. If you've manually installed one or both, update and recompile. – Ingo Karkat May 13 '17 at 08:23
  • @IngoKarkat I was able to resolve the issue by changing `--enable-perlinterp=dynamic` to `--enable-perlinterp=yes` – Alexej Magura May 15 '17 at 18:23
0

Download DWIMPerl for windows. I'm running win7 64 and gvim 7.4.2. Using strawberryperl and activeperl resulted in :echo has('perl') to yield 0. By switching to DWIMPerl (and ensuring my PATH env variables are proper) :echo has('perl') now yields 1 using the standard gvim distribution. This is important for vim extensions like dbext which require proper support for perl interfaces.

nachonachoman
  • 802
  • 1
  • 13
  • 29