Ошибка DBD::mysql (невозможно найти файл DBD/mysql.pm в @INC) из-за запуска сценария perl с perl-support.vim (закончилась просто неправильно установленным PERL5LIB)
Я пытаюсь короткий сценарий, который обращается к базе данных Mysql. Насколько я знаю, я установил соответствующие модули Perl, DBI и DBD::mysql и их зависимости.
Это единственный код в test.pl
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use DBI;
use DBD::mysql;
Запуск его из командной строки с помощью perl test.pl выполняется без ошибок.
Однако, когда я пытаюсь запустить его через perlsupport в vim с помощью "\rr", я получаю сообщение об ошибке.
Не удается найти DBD/mysql.pm в @INC (@INC содержит: /Users/rob/perl5/lib/perl5/darwin-thread-multi-2level /Users/rob/perl5/lib/perl5 /Users/rob/perl5/lib/perl5 setenv PERLBREW_MANPATH /Users/rob/perl5/perlbrew/perls/perl-5.16.0/man setenv PERLBREW_PATH / Пользователи / rob / perl5 / perlbrew / bin / Users / rob / perl5 / perlbrew / perls / perl- 5.16.0 / bin setenv PERLBREW_PERL perl-5.16.0 rob/perl5/perlbrew/bin /Users/rob/perl5/perlbrew/perls/perl-5.16.0/bin setenv PERLBREW_PERL perl-5.16.0 setenv PERLBREW_ROOT / Пользователи /rob/perl5/perlbrew setenv PERLBREW_VERSL 0.69 / Библиотека 5.16 /darwin-thread-multi-2level /Library/Perl/5.16 /Network/Library/Perl/5.16/darwin-thread-multi-2level /Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.2/darwin-thread-multi-2level /Library/Perl/Updates/5.16.2 /System/Library/Perl/5.16/darwin-thread-multi-2level /System/Library/Perl/5.16 /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level /System/Library/Perl/Extras/5.16 .) в /Users/rob/Desktop/perl/test.pl строка 11. НАЧАЛО сбой - компиляция прервана в /Users/rob/Desktop/perl/test.pl строка 11.
Я использую perlbrew на OSX и использую Perlbrew установленную версию Perl 5.16.0, и я настроил Local::Lib для модулей. Я просмотрел все настройки и даже попытался удалить / переустановить установку perlbrew perl 5.16.0 и удалить / переустановить DBI и DBD::mysql, чтобы проверить, не испортил ли я свои настройки.
"Setenv XXXXXXX" кажется неуместным в @INC, поэтому я, возможно, испортил настройку.
редактировать
Таким образом я закончил тем, что нашел проблему. Моя переменная PERL5LIB была неверно установлена где-то еще (хоббс был прав), поэтому я правильно установил ее в своем файле fish.config. Мне все еще нужно выяснить, где эта проблема, но эта конкретная проблема решена.