Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

Some README refactorings.

  • Loading branch information...
commit 42d8ebdd97490c5c95ae2dae24366235feeb80d4 1 parent 3d5359d
@pmichaud pmichaud authored
Showing with 35 additions and 33 deletions.
  1. +35 −33 README
@@ -8,12 +8,17 @@ For more details, see the full text of the license in the file LICENSE.
=head2 Build requirements
-For building Rakudo you need a C compiler, a C<make> utility, a Perl 5
-compiler, version 5.8 or newer, the C<icu> library
-(L<>) and the C<svn>
-command from Subversion.
+For building Rakudo you need at least a C compiler, a C<make> utility,
+and Perl 5.8 or newer. To automatically obtain and build Parrot
+or the spectest suite you may also need a subversion (svn) client.
-For example on Debian GNU/Linux you can install those with the command
+In order to fully support Unicode, you'll also want to have the
+ICU library installed (L<>).
+Rakudo can run without ICU, but some Unicode-related features
+may not work properly.
+As an example, on Debian GNU/Linux or Ubuntu Linux the necessary
+components for building Rakudo can be installed via the command
aptitude install build-essential libicu-dev subversion
@@ -40,9 +45,12 @@ Once you have a copy of Rakudo, build it as follows:
$ make
This will create a "perl6" or "perl6.exe" executable in the
-current (rakudo) directory.
+current (rakudo) directory. Programs can then be run from
+the build directory using a command like:
+ $ ./perl6
-The C<--gen-parrot> option tells to automatically
+The C<--gen-parrot> above option tells to automatically
download and build the most appropriate version of Parrot into
a local "parrot/" subdirectory, install that Parrot into
the "parrot_install/" subdirectory, and use that for building
@@ -52,29 +60,24 @@ Parrot only if a newer version is needed for whatever version
of Rakudo you're working with.
You can use C<--parrot-config=/path/to/parrot_config> instead
-of C<--gen-parrot> to point to an already installed Parrot that
-must include its development environment. You can build such a
-Parrot from source using Parrot's C<make install-dev> target, or
-install prebuilt C<parrot-devel> and/or C<libparrot-dev> packages.
-The version of this already installed Parrot must satisfy a
-minimum specified by the Rakudo being built. The latest version of
-Rakudo (called HEAD on github) often requires one newer than
-the preceding monthly Parrot release.
-Rakudo's C<make install> target will install Rakudo and its
-libraries into the Parrot installation that was used to create it.
-To run a Perl 6 program in the Rakudo build directory, issue a
-commands like:
- $ ./perl6
-To run Perl 6 programs in any directory, install Rakudo with the
-C<make install> command. You can then refer to
-C<parrot_install/bin/perl6> with a symbolic link, shell alias or
-search path and then use:
- $ perl6
+of C<--gen-parrot> to use an already installed Parrot for building
+Rakudo. This installed Parrot must include its development
+environment; typically this is done via Parrot's C<make install-dev>
+target or by installing prebuilt C<parrot-devel> and/or C<libparrot-dev>
+packages. The version of the already installed Parrot must satisfy a
+minimum specified by the Rakudo being built -- will
+verify this for you. Released versions of Rakudo always build
+against the latest release of Parrot; checkouts of the HEAD revision
+from github often require a version of Parrot that is newer than
+the most recent Parrot monthly release.
+Once built, Rakudo's C<make install> target will install Rakudo
+and its libraries into the Parrot installation that was used to
+create it. Until this step is performed, the "perl6" executable
+created by C<make> above can only be reliably run from the root of
+Rakudo's build directory. After C<make install> is performed
+the executable can be run from any directory (as long as the
+Parrot installation that was used to create it remains intact).
If the Rakudo compiler is invoked without an explicit script to
run, it enters a small interactive mode that allows Perl 6 statements
@@ -90,9 +93,8 @@ to make sure that the Rakudo compiler is basically working and that
it's capable of running a simple test harness.
Running C<make spectest> will import the official Perl 6 test suite
-from the Pugs repository
-L<> and run all of these tests that
-are currently known to pass.
+from the Pugs repository L<>
+and run all of these tests that are currently known to pass.
At present we do not have any plans to directly store the
official test suite as part of the Rakudo/Parrot repository,
Please sign in to comment.
Something went wrong with that request. Please try again.