Front Page All Articles Recent Changes Random Article

Contents

Concatenative language

  • ACL
  • Ait
  • Aocla
  • Breeze
  • Cat
  • Cognate
  • colorForth
  • CoSy
  • Deque
  • Elymas
  • Enchilada
  • ETAC
  • F
  • Factor
  • Forth
  • Freelang
  • Gershwin
  • Joy
  • Kitten
  • lang5
  • Lviv
  • min
  • mjoy
  • Mlatu
  • Ode
  • Om
  • Onyx
  • Plorth
  • Popr
  • Porth
  • PostScript
  • Quackery
  • r3
  • Raven
  • Retro
  • Staapl
  • Stabel
  • Trith
  • Worst
  • xs
  • XY
  • 5th
  • 8th

Other languages

  • APL
  • C++
  • Erlang
  • FP trivia
  • Haskell
  • Io
  • Java
  • JavaScript
  • Lisp
  • ML
  • Oberon
  • RPL
  • Self
  • Slate
  • Smalltalk

Computer Science

  • Type systems
  • Language paradigms
  • Compilers
  • Interpreters
  • Garbage collection

Meta

  • Search
  • Farkup wiki format
  • People
  • Etiquette
  • Sandbox

Factor/GIT repository

Building Factor from source is the recommended way to get Factor if you want to track development, because it saves bandwidth over downloading a binary every few days. It is also a requirement for contributors who wish to push patches to the Factor repository. New users and casual dabblers should use binaries if possible instead, to save time and effort.

Browse repository

You can browse the GIT repository online at http://gitweb.factorcode.org/.

Requirements

If you are using Linux, you may need to install development packages (gcc, libc headers, xorg development libraries, ...) before compiling Factor. If you are using Windows, you will need Cygwin. On Mac OS X, you will need Apple's developer tools.

You will also need git on all platforms.

Cloning a repository

Once you have installed git, you can clone a copy of the Factor repository:

git clone git://factorcode.org/git/factor.git

Cloning from behind a restrictive corporate firewall:

git clone http://factorcode.org/git/factor.git

Once you have a clone of the repository, there are two ways to build Factor; you can build a clean branch, or the bleeding-edge sources.

Building from a clean branch

Clean branches should be tracked by users who do not wish to use the binary packages, but nevertheless require a high degree of confidence that the source will compile and work. See Build farm for details of the process used to create clean branches.

The currently available clean branches are:

  • clean-linux-x86-32
  • clean-linux-x86-64
  • clean-winnt-x86-32
  • clean-macosx-x86-32
  • clean-macosx-x86-64
  • clean-macosx-ppc
  • clean-freebsd-x86-32
  • clean-freebsd-x86-64
  • clean-netbsd-x86-32
  • clean-netbsd-x86-64
  • clean-openbsd-x86-32
  • clean-openbsd-x86-64

Step 1: To track a clean branch, you will need to clone a repository first, then issue the following two commands to stay up to date:

git checkout -b clean-os-cpu origin/clean-os-cpu
git pull git://factorcode.org/git/factor.git clean-os-cpu

Step 2: Download the latest clean boot image for your architecture from http://factorcode.org/images/clean/. Place the boot image in the Factor directory.

Step 3: Compile the Factor VM by running make (gmake on BSD).

Step 4: Bootstrap Factor by issuing a command like the following, where arch is one of x86.32, x86.64, macosx-ppc or linux-ppc:

./factor -i=boot.arch.image

Building bleeding-edge sources

Instead of tracking a clean branch, you can also track the latest sources. Keep in mind that these might not always build or work correctly, so pay attention to the Concatenative IRC channel and Mailing list if you plan on doing this.

Step 1: To pull the latest patches, issue the following command in a cloned repository:

git pull origin master

Step 2: Download the latest boot image for your architecture from http://factorcode.org/images/latest/. Place the boot image in the Factor directory.

Step 3: Compile the Factor VM by running make (gmake on BSD).

Step 4: Bootstrap Factor by issuing a command like the following, where arch is one of x86.32, x86.64, macosx-ppc or linux-ppc:

./factor -i=boot.arch.image

This revision created on Wed, 1 Oct 2008 06:31:04 by slava

Latest Revisions Edit

All content is © 2008-2023 by its respective authors. By adding content to this wiki, you agree to release it under the BSD license.