Написание программ на perl6 с использованием Rakudo Star: не удается установить на OS X

Я пытаюсь установить Rakudo Star на OS X 10.6, и я достиг всегда разочаровывающей точки, когда моя сборка терпела неудачу, и я не уверен, что делать дальше. Кто-нибудь здесь знает, как это сделать? (Я пытаюсь настроить это для написания некоторых локальных программ на Perl6, поэтому я не уверен, хотят ли Правила этого при сбое сервера или при переполнении стека, при необходимости ударьте меня)

Я скачал предоставленный дистрибутив и запустил

make VERSION=2010.07

Для успешного создания фактического раздачи в папке

rakudo-star-2010.07

Для всех, кого это интересует, мне нужно было загрузить версию gnu find для портов (установленную в / opt / local / bin / gfind), а затем присвоить моей обычной находке псевдоним gfind. В находке OS X отсутствует опция -printf.

Это в стороне, согласно ПРОЧИТАЙТЕ меня, я

$ cd rakudo-star-2010.07
$ perl Configure.pl --gen-parrot

Это продолжается какое-то время, но затем сбивается со следующей

/Users/alanstorm/Downloads/rakudo-star-7652a0b/rakudo-star-2010.07/install/src/parrot/2.6.0/pmc/timer.dump
/Users/alanstorm/Downloads/rakudo-star-7652a0b/rakudo-star-2010.07/install/src/parrot/2.6.0/pmc/undef.dump
/Users/alanstorm/Downloads/rakudo-star-7652a0b/rakudo-star-2010.07/install/src/parrot/2.6.0/pmc/unmanagedstruct.dump
/Users/alanstorm/Downloads/rakudo-star-7652a0b/rakudo-star-2010.07/install/src/parrot/2.6.0/vtable.dump
Finished install_dev_files.pl

Reading configuration information from install/bin/parrot_config ...
===SORRY!===
Parrot revision r48225 required (currently r0)
To automatically build the version of Parrot that came with this
distribution (), try re-running Configure.pl with the 
'--gen-parrot' option.  Or, use the '--parrot-config' option to
explicitly specify the location of parrot_config to be used to
build Rakudo Star.

Я обнаружил похожую проблему в этих журналах IRC: http://irclog.perlgeek.de/parrot/2009-05-11, но я недостаточно разбираюсь в проекте (или git), чтобы понять, что они сделали, чтобы решить эту проблему. Мое лучшее предположение состоит в том, что похоже, что номер версии подрывной версии должен быть записан в parrot_config (который представляет собой двоичный файл), и поскольку первоначальный make (по-видимому) использовал git для захвата файла, этого не произошло.

Кроме того, после сбоя конфигурации perl у меня появилось два новых файла с именем parrot_config.

find . -name parrot_config
./install/bin/parrot_config
./parrot-2.6.0/parrot_config

Я пробовал запустить Configure.pl со следующими флагами, но каждый из них получал такое же сообщение «Извините», как указано выше?

perl Configure.pl --gen-parrot --parrot-config install/bin/parrot_config
perl Configure.pl install/bin/parrot_config
perl Configure.pl --gen-parrot --parrot-config parrot-2.6.0/parrot_config
perl Configure.pl --parrot-config parrot-2.6.0/parrot_config

У кого-нибудь есть мысли о следующих шагах? Если ответ - «спросите у разработчиков Perl», есть ли у вас совет, как лучше всего это сделать?


person Alan Storm    schedule 01.08.2010    source источник


Ответы (3)


Вам ни в коем случае не следует запускать make VERSION=2010.07 - это работа диспетчера релизов.

Вместо этого вы должны загрузить tarball, который должен создать make VERSION=2010.07 (но который, похоже, в настоящее время не работает ни на одной платформе, кроме Linux).

Это правильная ссылка: http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz

Извините за путаницу, мы все еще пытаемся это лучше документировать.

person moritz    schedule 01.08.2010
comment
видите, люди Perl везде - person ysth; 02.08.2010

Оказывается, я скачал The Wrong Thing ™. Скачивание предварительно созданного архива с дистрибутивом по адресу

http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz

решил мои проблемы. Это скомпилировано без сучка и задоринки. Ребята из комнаты # perl6 freenode очень помогли в решении этой проблемы.

person Alan Storm    schedule 01.08.2010

Я получал эту ошибку, когда у меня не был установлен клиент Subversion. Я даже пропустил --gen-parrot и получил сообщение, что мне не следует указывать этот флаг.

person Axeman    schedule 01.08.2010