Skip to content
This repository

Parrot Virtual Machine

branch: repcc

This branch is 36 commits ahead and 2258 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 compilers
Octocat-spinner-32 config
Octocat-spinner-32 docs
Octocat-spinner-32 editor Remove references to svn or svn.parrot.org. Replace with git referenc…
Octocat-spinner-32 examples Merge remote branch 'origin/master' into 233/file_based_config
Octocat-spinner-32 ext update winxed snapshot to release number 1.5.0
Octocat-spinner-32 frontend
Octocat-spinner-32 include
Octocat-spinner-32 lib
Octocat-spinner-32 ports moved Parrot_PMC_newclass to oo.c and renamed to Parrot_oo_new_class_pmc
Octocat-spinner-32 runtime Auto-replace TT# with GH# as per GH #707
Octocat-spinner-32 src
Octocat-spinner-32 t
Octocat-spinner-32 tools
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 CREDITS
Octocat-spinner-32 ChangeLog
Octocat-spinner-32 Configure.pl [configure] Provide an additional pattern by which an entry in the 'g…
Octocat-spinner-32 DEVELOPING first batch of $Id$ removals
Octocat-spinner-32 DONORS.pod [html_cleanup] merge in master, fix conflicts
Octocat-spinner-32 LICENSE Update license to Artistic 2.0. Resolves RT #43165.
Octocat-spinner-32 MANIFEST
Octocat-spinner-32 MANIFEST.SKIP Update MANIFEST.SKIP.
Octocat-spinner-32 MANIFEST.generated
Octocat-spinner-32 PBC_COMPAT codingstd fixes
Octocat-spinner-32 PLATFORMS Add 2 entries for darwin/ppc.
Octocat-spinner-32 README
Octocat-spinner-32 README_cygwin.pod Eliminate trailing whitespace. mstevens++.
Octocat-spinner-32 README_win32.pod first batch of $Id$ removals
Octocat-spinner-32 RESPONSIBLE_PARTIES
Octocat-spinner-32 TODO replace some references to trac.parrot.org with the appropriate links…
Octocat-spinner-32 VERSION
Octocat-spinner-32 api.yaml update ticket links from trac to github
Octocat-spinner-32 parrotbug replace some references to trac.parrot.org with the appropriate links…
README
This is Parrot, version 4.0.0
------------------------------

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


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.

OVERVIEW
--------
Parrot is a virtual machine designed to efficiently compile and execute
bytecode for dynamic languages.

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, and Storable 2.12 or newer
for running various configure and build scripts.

For most of the platforms that we are supporting initially, Parrot should build
out of the box. docs/parrot.pod lists the core platforms. PLATFORMS provides
reports on the platforms on which Parrot has been built and tested.

HOW TO GET PARROT FROM GITHUB
-----------------------------
I.  Install Git.

Linux:
The method depends on your distribution. To install you should execute (as root or sudo <cmd>):

On Ubuntu/Debian (apt-based):

    apt-get install git-core

On Red Hat, Fedora (rpm-based):

    yum install git

on Gentoo (portage):

    emerge -av dev-vcs/git

Windows:
There are 2 Git ports on Windows:

msysgit 	    http://code.google.com/p/msysgit/downloads/list
TortoiseGit 	http://code.google.com/p/tortoisegit/downloads/list

Macintosh OS X:

An Internet search will locate a variety of git installers for Mac OS X,
including this:

    http://help.github.com/mac-git-installation/

II.  Obtaining Parrot from github.com

To get a copy of the Parrot Git repository:

    git clone git://github.com/parrot/parrot.git

This will checkout the master branch by default. To create a local branch
that tracks the branch "some_branch":

    git checkout -b --track some_branch origin/some_branch

All the above URLs are read-only. If you are a Parrot core developer, then
use the read-write URL:

    git clone git@github.com:parrot/parrot.git

You can view the list of branches at http://github.com/parrot/parrot

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

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

    perl Configure.pl --optimize

to run the Configure script. The Configure.pl script extracts configuration
from the running perl5 program.  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 --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=/home/joe/bird
    make install

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

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

CHANGES
-------

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

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

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

For development discussions see the information in docs/gettingstarted.pod.

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

See 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://docs.parrot.org/
    https://github.com/parrot/parrot/

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