Да, это возможно.
Вы просто будете обращаться с ним как с любым обычным объектом и использовать его для своих значений или стиля. См. здесь для полного объяснения.
Самый простой подход я нашел, что это использовало модуль FindBin. Как это:
use FindBin;
use lib $FindBin::Bin;
Обычно я предпочитаю предоставлять свои сценарии таким способом, которым программы находятся в том, что, и библиотеки находятся во что
В этих ситуациях я использую немного более сложный подход:
use Cwd qw(abs_path);
use FindBin;
use lib abs_path("$FindBin::Bin/../lib");
Вызов abs_path должен заставить @INC содержать то, что, и не whatever/bin/../освобождать - это - просто небольшое изменение, но делает сообщения ошибки отсчета легче.
Смотрите по номиналу:: Упаковщик. Это создает исполняемый файл со всеми включенными зависимостями сценария. Это делает распределение легким. Вы также могли также предоставить Вашим пользователям версию своего модуля, который может быть установлен в их системах. Посмотрите Модуль:: Начинающий для простого способа создать все файлы, требуемые сделать стандартное распределение CPAN-стиля.
Из perlfaq8 , который отвечает «Как добавить каталог в мой include путь (@INC) во время выполнения? ". Есть также несколько других ответов на вопросы по этой проблеме.
Как добавить каталог к моему пути включения (@INC) во время выполнения?
Вот предлагаемые способы изменения вашего пути включения, включая переменные среды, переключатели времени выполнения и операторы в коде:
переменная среды PERLLIB
$ export PERLLIB=/path/to/my/dir
$ perl program.pl
переменная среды PERL5LIB
$ export PERL5LIB=/path/to/my/dir
$ perl program.pl
флаг командной строки perl -Idir
$ perl -I/path/to/my/dir program.pl
использование lib pragma:
use lib "$ENV{HOME}/myown_perllib";
Последнее особенно полезно, потому что он знает о машинно-зависимых архитектурах. Прагматический модуль lib.pm был впервые включен в версию Perl 5.002.
Чтобы преобразовать относительные ссылки в абсолютные и добавить в @INC, я обычно использую ex :: lib. Конечно, это полезно, только если вы планируете сохранять одинаковое расположение скрипта и модуля на всех компьютерах, где вы планируете запустить скрипт.