Как установить Perl5.10 на OS X 10.5.8?

3460
Alexander Gladysh

Мне нужно установить Perl 5.10 на моей коробке OS X 10.5.8.

У меня установлен Macports. И, кажется, у меня также установлен порт perl5.10:

$ sudo port install perl5.10 Пароль: ---> Вычисление зависимостей для perl5.10 ---> Очистка perl5.10 

Однако текущая версия Perl по-прежнему 5.8.8

$ perl / Опт / местные / бен / Perl  $ perl - версия  Это perl, v5.8.8, созданный для darwin-2level  Copyright 1987-2006, Ларри Уолл  Perl может быть скопирован только на условиях Художественной лицензии или Стандартная общественная лицензия GNU, которую можно найти в исходном комплекте Perl 5.  Полная документация по Perl, включая списки часто задаваемых вопросов, должна быть найдена на эта система использует "man perl" или "perldoc perl". Если у вас есть доступ к Интернет, укажите ваш браузер на http://www.perl.org/, домашней странице Perl.  $ / opt / local / bin / perl --version  Это perl, v5.8.8, созданный для darwin-2level  Copyright 1987-2006, Ларри Уолл  Perl может быть скопирован только на условиях Художественной лицензии или Стандартная общественная лицензия GNU, которую можно найти в исходном комплекте Perl 5.  Полная документация по Perl, включая списки часто задаваемых вопросов, должна быть найдена на эта система использует "man perl" или "perldoc perl". Если у вас есть доступ к Интернет, укажите ваш браузер на http://www.perl.org/, домашней странице Perl. 

Что мне не хватает?

3
В журналах установки macports указано, что каталогом установки был / opt / local / bin / perl? Возможно, вместо этого выбрано что-то странное, или, возможно, установка завершилась неудачным образом, который вы пропустили? Ether 14 лет назад 0

2 ответа на вопрос

5
kartikmohta

I guess it would be named perl5.10 and not just perl.

Конечно, вы можете запустить `port content perl5.10`, но в основном это исполняемый файл Perl 5.10` perl5.10`. mipadi 14 лет назад 2
2
Jonathan Leffler

Where was each version installed?

  • /usr/bin/perl is 5.8.8

So, the first thing to check is your PATH variable.

Then look at other places - /usr/local/bin and so on - to see where the new version was installed.

For myself, I build my own Perl, leaving the system one to the system; it is in $HOME/perl/v5.10.1/bin/perl, near version 5.10.0.

I use this script - called 'which' - to establish which version of a program I'm using. Used with 'which -a perl', it would tell me all the possible copies of Perl I could be using...

#!/bin/sh # # @(#)$Id: pathfile.sh,v 2.1 2008/07/14 17:42:13 jleffler Exp $ # # Which command is executed # Loosely based on which from Kernighan & Pike "The UNIX Programming Environment" oldpath=$PATH PATH=/bin:/usr/bin usage() { echo "Usage: $0 [-afrwx] [-p path] command ..." >&2 exit 1 } tflag=-x aflag=no while [ $# -gt 0 ] do case $1 in -[frwx]) tflag=$1 shift;; -p) oldpath=$2 shift 2;; -a) aflag=yes shift;; --) shift; break;; -*) usage;; *) break;; esac done case $# in 0) usage;; esac PATHDIRS=`echo $oldpath | sed ' s/^:/.:/ s/::/:.:/g s/:$/:./ s/:/ /g'` for cmd in $* do fflag=no case "$cmd" in */*) if [ ! -d $cmd ] && [ $tflag $cmd ] then echo $cmd else echo "$cmd: not found" 1>&2 fi;; *) for directory in $PATHDIRS do if [ ! -d $directory/$cmd ] && [ $tflag $directory/$cmd ] then echo $directory/$cmd fflag=yes [ $aflag = no ] && break fi done if [ $fflag = no ] then echo "$cmd: not found" >&2 fi esac done 
Разве это не предоставлено `/ usr / bin / which`? Jeremy L 14 лет назад 0
It depends which which you have as /usr/bin/which. The machines I used back in the late 80s didn't have any which in any system bin directory, which was a nuisance. Hence I cribbed this code. I added the -a, -r, -w, -x options relatively recently. If you've got a functional which, you don't need this one; if you don't, it may save you some grief. Jonathan Leffler 14 лет назад 1