Как заставить 2 версии Perl работать на Windows 7? - PullRequest
3 голосов
/ 10 сентября 2011

Мне нужно запустить 2 версии Perl на Windows 7.

Первая из них связана с VMware vCLI, это Active State Perl 5.8.8.

Та, которая мне нужнаскрипт dev - это Stawberry 5.12.4 (что-то в этом роде).

Когда я набираю perl -v, он вызывает AS perl, который, кажется, не поддерживает такие вещи, как именованные захваты и другие вещи, которые я воспринимал как должное в perl.

Оба perl установлены. Я просто не знаю, как вызывать Stawberry вместо AS perl.

Есть идеи?

Ответы [ 2 ]

3 голосов
/ 10 сентября 2011

Ваша конкретная проблема может быть решена путем редактирования переменной среды PATH, как отметил Дэвид Хеффернан.

System control panel
> Advanced system settings
> Environment variables
> Path
> Edit...

В более широком смысле, вот общий подход, который я сейчас использую для управления несколькими версиями Perl, Pythonи т. д. в Windows 7. Я был бы признателен за советы по улучшению способов сделать это.

Я создаю область установки Perl следующим образом:

C:\usr\perls\
     5.10\
     5.12\
     etc.

     current # Symbolic link.

В этой же области я создаю символическую область.ссылка (current), ссылающаяся на версию, которую я хочу использовать по умолчанию, и я удостоверяюсь, что все ссылки Perl в моей переменной среды PATH используют current, а не конкретные номера версий.

# Open cmd window as an administrator.
cd C:\usr\perls
mklink /D current 5.12

Под этимподход, я могу быстро изменить Perl по умолчанию в моей системе, изменив одну символическую ссылку, вместо того, чтобы вносить несколько изменений в PATH, что является более утомительным.

Кроме того, я добавляю каталог в PATH, содержащий пакетные сценарии для вызоваконкретные Perls.

C:\usr\bin
    perl5.10.bat
    perl5.12.bat
    etc.

Эти сценарии выглядят следующим образом:

    @ C:\usr\perls\5.12\perl\bin\perl.exe %*
1 голос
/ 10 сентября 2011

Я бы сделал это, изменив переменную окружения PATH. Сделайте так, чтобы он указывал на версию 5.12, и вы можете обнаружить, что код VMware продолжает работать, потому что он знает, где найти его свой Perl. Если нет, создайте файл .bat, который устанавливает PATH для ссылки на установку 5.12, и используйте его для запуска в окне cmd, из которого вызовы perl вызывают 5.12.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...