Concatenative topics
Concatenative meta
Other languages
Meta
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.
See Requirements.
Once you have a checkout of the Factor source tree, you can use the build.sh
utility to check for updates, and build Factor:
MacOS/nix:
./build.sh update
Windows:
build.cmd
This utility automatically updates your repository, rebuilds the Factor VM, downloads the latest boot image, and bootstraps Factor. This utility will work on Windows if Visual Studio 2012 or later is installed.
If you don't want to, or can't, use the build.sh
script, you will need to build Factor in three steps:
If you did a git pull
to update the sources, don't forget to recompile your VM and get a new boot image too.
Factor is partially self-hosting; all of the code in core
is packaged into a boot image by the bootstrap process. You will need to download a boot image before building Factor:
http://downloads.factorcode.org/images/master/ for the latest images,
Boot images are CPU- and OS-specific boot.<arch>.image
:
boot.unix-86.32.image
- 32-bit Mac OS X, Linux, *BSDboot.winnt-86.32.image
- 32-bit Windowsboot.unix-86.64.image
- 64-bit Mac OS X, Linux, *BSDboot.winnt-86.64.image
- 64-bit Windowsboot.macosx-ppc.image
- 32-bit PowerPC Mac OS XYou will need to download either a clean boot image, or the latest boot image, depending on whether you're building from a clean branch or the latest branch. See below for details.
Once you have built Factor, you can generate a new boot image if you choose.
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-<os>-<cpu>
:
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
clean-windows-x86-32
clean-windows-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://downloads.factorcode.org/images/clean/. Place the boot image in the Factor directory.
Step 3: Compile the Factor VM by running make:
make # Linux, Mac OS X gmake # BSD nmake /f Nmakefile # Windows
Step 4: Bootstrap Factor by issuing a command like the following, where <arch>
is one of unix-x86.32
, winnt-x86.32
, unix-x86.64
, winnt-x86.64
, or macosx-ppc
:
./factor -i=boot.<arch>.image
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://downloads.factorcode.org/images/master/. Place the boot image in the Factor directory.
Step 3: Compile the Factor VM by running make:
make # Linux, Mac OS X gmake # \*BSD nmake /f Nmakefile # Windows
Step 4: Bootstrap Factor by issuing a command like the following, where <arch>
is one of unix-x86.32
, winnt-x86.32
, unix-x86.64
, winnt-x86.64
, or macosx-ppc
:
./factor -i=boot.<arch>.image
After running your new build, verify it can create an image.
Step 1: Execute like the following, where arch
is one of x86.32
, unix-x86.64
, winnt-x86.64
:
"unix-x86.64" make-image
Step 2: After the image has been built execute Step 4 as described above.
Step 3: Run factor as described below, if it runs successfully you're good to go.
For some points in the source history, boot images marked by their corresponding SHA1 commit tag are available at
http://downloads.factorcode.org/images/build/
Once the SHA1 is checked out from Git, building is similar to building bleeding-edge sources.
See Running Factor.
This revision created on Thu, 18 Jul 2024 11:43:39 by jryans (Link to renamed repository article)