1ELICE(1) General Commands Manual ELICE(1)
2
3
4
6 elice - compiler for programs written in PureBasic
7
9 elice [options...] [-o outfile] sourcefile...
10
12 elice is a compiler for programs written in the proprietary language
13 PureBasic. It compiles such programs to C++ and then invokes g++ to
14 generate an executable. Its interface is similar to that of g++.
15
16 Normal usage is to compile just one source file, which uses IncludeFile
17 and XIncludeFile statements to incorporate whatever other source files
18 are needed. Such include statements are resolved relative to the
19 directory of the source file they are in. If there are multiple source
20 files on the command line, they are compiled together to form one exe‐
21 cutable.
22
23 elice comes with a library of builtin procedures which will be included
24 in the executable when they are needed. Depending on which builtin
25 procedures are used, the resulting executable may be dynamically linked
26 to other libraries such as libSDL.
27
29 Most options will be passed through to g++, so you can use -g -O2 and
30 such as usual.
31
32 -o outfile
33 Use outfile as the name of the resulting executable. Without -o,
34 the default is to use the name of the first source file without
35 its extension (for example prog.pb becomes prog).
36
37 -save-temps
38 Save intermediate stages of compilation (C++ with suffix .cc,
39 preprocessed C++ with suffix .ii, assembler code with suffix .s,
40 object code with suffix .o) in the current directory.
41
42 -v Verbose mode. Print detailed information about the programs
43 invoked during compilation.
44
46 The exit status is 0 if there were no errors. elice returns 1 if there
47 was a parse error or an error in the command line. If the invocation
48 of g++ fails, it returns the exit code from g++.
49
51 elice -g -O2 program.pb -o program
52
54 This program is a work in progress. It does not support the entire
55 PureBasic language, and supports only a small selection of the builtin
56 procedures. It was written to compile one specific program, and it is
57 not likely to be able to compile other programs without modification.
58
59 Please let the author know if you would like to use elice to compile
60 other free software programs and need help extending it.
61
63 Report bugs to <eligo@clueonic.net>.
64
66 Written by Richard Braakman.
67
69 Copyright 2008 Richard Braakman. Published under the GNU GPL version 2
70 or later. See the COPYING file for details. There are additional per‐
71 missions for the use of the runtime library.
72
74 elice was written specifically to free the game Lost Labyrinth
75 (http://www.lostlabyrinth.com/) and to make it playable on the author's
76 amd64 system. Lost Labyrinth is a free software game published under
77 the GNU GPL, but it is written in a language that had a proprietary
78 compiler, and that compiler supported a limited set of target platforms
79 which did not include 64-bit Linux.
80
81 Under the battle cry of "It's BASIC, how hard can it be?" the author of
82 elice started to write a free compiler. Most of the work was done in
83 September 2006 and it resulted in a playable game, but the compiler was
84 not maintained and was not able to compile newer versions of Lost
85 Labyrinth.
86
87 The first public version of elice was released in the summer of 2008,
88 when it had been upgraded to support PureBasic version 4 and was ready
89 for inclusion in the build system of Lost Labyrinth.
90
91 Much thanks goes to Markus Döbele for having faith in early versions of
92 elice and relying on it to build the Linux version of Lost Labyrinth.
93
94
95
96 ELICE(1)