]> gitweb.factorcode.org Git - factor.git/blob - README.txt
Fix conflict in images vocab
[factor.git] / README.txt
1 The Factor programming language
2 -------------------------------
3
4 This file covers installation and basic usage of the Factor
5 implementation. It is not an introduction to the language itself.
6
7 * Contents
8
9 - Compiling the Factor VM
10 - Libraries needed for compilation
11 - Bootstrapping the Factor image
12 - Running Factor on Unix with X11
13 - Running Factor on Mac OS X - Cocoa UI
14 - Running Factor on Mac OS X - X11 UI
15 - Running Factor on Windows
16 - Command line usage
17 - The Factor FAQ
18 - Source organization
19 - Community
20
21 * Compiling the Factor VM
22
23 The Factor runtime is written in GNU C99, and is built with GNU make and
24 gcc.
25
26 Factor supports various platforms. For an up-to-date list, see
27 <http://factorcode.org/getfactor.fhtml>.
28
29 Factor requires gcc 3.4 or later.
30
31 On x86, Factor /will not/ build using gcc 3.3 or earlier.
32
33 If you are using gcc 4.3, you might get an unusable Factor binary unless
34 you add 'SITE_CFLAGS=-fno-forward-propagate' to the command-line
35 arguments for make.
36
37 Run 'make' ('gmake' on *BSD) with no parameters to build the Factor VM.
38
39 Compilation will yield an executable named 'factor' on Unix,
40 'factor.exe' on Windows XP/Vista, and 'factor-ce.exe' on Windows CE.
41
42 * Libraries needed for compilation
43
44 For X11 support, you need recent development libraries for libc,
45 Freetype, X11, OpenGL and GLUT. On a Debian-derived Linux distribution
46 (like Ubuntu), you can use the following line to grab everything:
47
48     sudo apt-get install libc6-dev libfreetype6-dev libx11-dev glutg3-dev
49
50 * Bootstrapping the Factor image
51
52 Once you have compiled the Factor runtime, you must bootstrap the Factor
53 system using the image that corresponds to your CPU architecture.
54
55 Boot images can be obtained from <http://factorcode.org/images/latest/>.
56
57 Once you download the right image, bootstrap Factor with the
58 following command line:
59
60 ./factor -i=boot.<cpu>.image
61
62 Bootstrap can take a while, depending on your system. When the process
63 completes, a 'factor.image' file will be generated. Note that this image
64 is both CPU and OS-specific, so in general cannot be shared between
65 machines.
66
67 * Running Factor on Unix with X11
68
69 On Unix, Factor can either run a graphical user interface using X11, or
70 a terminal listener.
71
72 If your DISPLAY environment variable is set, the UI will start
73 automatically:
74
75   ./factor
76
77 To run an interactive terminal listener:
78
79   ./factor -run=listener
80
81 If you're inside a terminal session, you can start the UI with one of
82 the following two commands:
83
84   ui
85   [ ui ] in-thread
86   
87 The latter keeps the terminal listener running.
88
89 * Running Factor on Mac OS X - Cocoa UI
90
91 On Mac OS X, a Cocoa UI is available in addition to the terminal
92 listener.
93
94 The 'factor' executable runs the terminal listener:
95
96   ./factor
97
98 The 'Factor.app' bundle runs the Cocoa UI. Note that this is not a
99 self-contained bundle, it must be run from the same directory which
100 contains factor.image and the library sources.
101
102 * Running Factor on Mac OS X - X11 UI
103
104 The X11 UI is also available on Mac OS X, however its use is not
105 recommended since it does not integrate with the host OS.
106
107 When compiling Factor, pass the X11=1 parameter:
108
109   make X11=1
110
111 Then bootstrap with the following switches:
112
113   ./factor -i=boot.<cpu>.image -ui-backend=x11
114
115 Now if $DISPLAY is set, running ./factor will start the UI.
116
117 * Running Factor on Windows XP/Vista
118
119 The Factor runtime is compiled into two binaries:
120
121   factor.com - a Windows console application
122   factor.exe - a Windows native application, without a console
123
124 If you did not download the binary package, you can bootstrap Factor in
125 the command prompt using the console application:
126
127   factor.com -i=boot.<cpu>.image
128
129 Once bootstrapped, double-clicking factor.exe or factor.com starts
130 the Factor UI.
131
132 To run the listener in the command prompt:
133
134   factor.com -run=listener
135
136 * The Factor FAQ
137
138 The Factor FAQ is available at <http://factorcode.org/faq.fhtml>.
139
140 * Command line usage
141
142 Factor supports a number of command line switches. To read command line
143 usage documentation, enter the following in the UI listener:
144
145   "command-line" about
146
147 * Source organization
148
149 The Factor source tree is organized as follows:
150
151   build-support/ - scripts used for compiling Factor
152   vm/ - sources for the Factor VM, written in C
153   core/ - Factor core library
154   basis/ - Factor basis library, compiler, tools
155   extra/ - more libraries and applications
156   misc/ - editor modes, icons, etc
157   unmaintained/ - unmaintained contributions, please help!
158
159 * Community
160
161 The Factor homepage is located at <http://factorcode.org/>.
162
163 Factor developers meet in the #concatenative channel on the
164 irc.freenode.net server. Drop by if you want to discuss anything related
165 to Factor or language design in general.
166
167 Have fun!
168
169 :tabSize=2:indentSize=2:noTabs=true: