Skip to content
This repository

The Parrot Virtual Machine

branch: context_unify2
README
This is Parrot, version 1.7.0
------------------------------

Parrot is Copyright (C) 2001-2009, Parrot Foundation.

$Id$

LICENSE INFORMATION
-------------------

This code is distributed under the terms of the Artistic License 2.0.
For more details, see the full text of the license in the file LICENSE.

PREREQUISITES
-------------

You need a C compiler, a linker, and a make program of course. If you will be
linking with the ICU library you have to download and install it before
configuring Parrot.

Get it from http://site.icu-project.org/download

You also need Perl 5.8.4 or newer, Storable 2.12 or newer, and Bundle::Parrot
to run various configure and build scripts.

For most of the platforms that we are supporting initially, Parrot should build
out of the box.  PLATFORM lists our target platforms.

INSTRUCTIONS
------------

For now, unpack your Parrot tarball, (if you're reading this, you've
probably already done that) and type

    perl Configure.pl

to run the Configure script. The Configure.pl script extracts
configuration from the running perl5 program.  Unfortunately, the perl5
configuration is not set up to compile and link c++ programs, so you
may need to explicitly tell Configure.pl which compiler and linker to
use.  For example, to compile C files with 'cc', C++ files with
'CC', and link everything together with 'CC', you would type

    perl Configure.pl --cc=cc --cxx=CC --link=CC --ld=CC

See "perl Configure.pl --help" for more options and docs/configuration.pod
for more details.

For systems like HPUX that don't have inet_pton please run

    perl Configure.pl --define=inet_aton

Running Configure.pl will generate a config.h header, a Parrot::Config
module, platform files and many Makefiles.

The file "myconfig" has an overview of configure settings.

Next, run make. (Configure.pl will tell you which version of make it
recommends for your system.)

Now, the interpreter should build.  If you are building the ICU library
(this is the default on most systems), you need to use GNU make instead
(or something compatible with it).

You can test Parrot by running "make test". You can run the tests in parallel
with "make TEST_JOBS=3 test".

You can run the full test suite with

    make fulltest

Note: PLATFORMS contains notes about whether test failures are expected
on your system.

You can install Parrot with:

    make install

By default, this installs in /usr/local, with the Parrot executable in
/usr/local/bin. If you want to install Parrot into another location use:

    perl Configure.pl --prefix=/Users/foo/parrot-0.7.0
    make install

But please note that dynamic libs will not be found for non-standard
locations unless you set LD_LIBRARY_PATH or similar.

If you want to build high level languages on top of Parrot, you should
also run

    make install-dev

to install development files which compilers need in their build process.

Look at docs/parrot.pod and docs/intro.pod for where to go from here.  If you
have any problems, see the section "How To Submit A Bug Report" in
docs/submissions.pod.  These documents are in POD format. You can view these
files with the command:

    perldoc -F docs/intro.pod

NOTES
-----

On some older computers with little RAM, the computed-goto dispatch core
(ops/core_ops_cg.c) may take a while to compile or may fail to compile at all.
You can pass a flag to Configure.pl (--cgoto=0) to disable the computed-goto
core, at a slight cost in runtime speed.

CHANGES
-------

For documentation on the user-visible changes between this version and
previous versions, please see NEWS.

MAILING LISTS
-------------

The mailing list for Parrot is parrot-dev@lists.parrot.org. Subscribe by
filling out the form at http://lists.parrot.org/mailman/listinfo/parrot-dev
It is archived at http://lists.parrot.org/pipermail/parrot-dev/

FEEDBACK, PATCHES, etc.
-----------------------

See F<docs/submissions.pod> for more information on reporting bugs and
submitting patches.

WEB SITES
---------

The following web sites have all the information you need about Parrot:
    http://www.parrot.org/
    http://trac.parrot.org/

Have fun,
   The Parrot Team.
Something went wrong with that request. Please try again.