4

I installed

On Windows 7 64-bit OS
ActivePerl 64bit 
Version 5.16.3.1603
on D disk as D:/perl64

I controlled Windows path, it is OK.

D:\perl64\site\bin; D:\perl64\bin;

When I open Git Bash commander and enter

ppm install DBI

or

ppm install DBD::mysql

It gives the error;

Can't locate ActivePerl/PPM/limited_inc.pm in @INC (@INC contains:
  /usr/lib/perl5/5.8.8/msys /usr/lib/perl5/5.8.8
  /usr/lib/perl5/site_perl/5.8.8/msys /usr/lib/perl5/site_perl/5.8.8
  /usr/lib/perl5/site_perl .) at /d/perl64/bin/ppm line 4. BEGIN
  failed--compilation aborted at /d/perl64/bin/ppm line 4.

I couldn't find any help or tutorial

Mark Setchell
  • 191,897
  • 31
  • 273
  • 432
Yilmazerhakan
  • 1,765
  • 1
  • 13
  • 21

2 Answers2

4

You're not using ActivePerl. You're using msys's Perl. Presumably, it comes first in the path. You'll need to modify your path or edit ppm.bat to load the correct Perl.

ikegami
  • 367,544
  • 15
  • 269
  • 518
0

To add to @ikegami 's answer, msys has perl installed inside the /bin (or /usr/bin ) folder.

perl.exe, perl5.8.8.exe, msys-perl5_8.dll, perldoc etc..

Move these files to a backup folder, i.e. msys_perl

  • cd /bin
  • mkdir msys_perl
  • mv *perl* msys_perl/

(or you can delete them if you don't need them.)

Now msys' Perl installation won't conflict with your ActiveState Perl version.

You might also need to copy perl.exe from your ActiveState Perl bin directory /c/Perl64/bin/perl.exe to /usr/bin/, to avoid getting bad interpreter: No such file or directory error message since ppm reads from /usr/bin/perl

  • cp /c/Perl64/bin/perl.exe /usr/bin/
lkisac
  • 2,007
  • 1
  • 26
  • 31
  • That a lot of work! Why not just change your path as I suggested? – ikegami May 12 '15 at 22:04
  • I missed the "Presumably, it comes first in the path" in your answer... my apologies. I think on first glance I thought you were suggesting to remove the directory in the PATH which contained the msys version of Perl – lkisac May 13 '15 at 14:20
  • @ikegami I modified the path so the correct version comes first, I verified with `perl -v`, but ppm still reads from msys perl. Modifying ppm.bat _has_ to be done as well it seems. I guess my solution will work without having to modify ppm.bat (which is also a read-only file) – lkisac May 19 '15 at 19:24
  • Also, this could seriously break things that rely on the system Perl. – ikegami Mar 26 '19 at 20:33