picolisp

Unnamed repository; edit this file to name it for gitweb.
git clone https://logand.com/git/picolisp.git/
Log | Files | Refs | README | LICENSE

INSTALL (5254B)


      1 26apr13abu
      2 (c) Software Lab. Alexander Burger
      3 
      4 
      5          PicoLisp Installation
      6          =====================
      7 
      8 There is no 'configure' procedure, but the PicoLisp file structure is simple
      9 enough to get along without it (we hope). It should compile and run on
     10 GNU/Linux, FreeBSD, Mac OS X (Darwin), Cygwin/Win32, and possibly other systems
     11 without problems.
     12 
     13 PicoLisp supports two installation strategies: Local and Global.
     14 
     15 The default (if you just download, unpack and compile the release) is a local
     16 installation. It will not interfere in any way with the world outside its
     17 directory. There is no need to touch any system locations, and you don't have to
     18 be root to install it. Many different versions - or local modifications - of
     19 PicoLisp can co-exist on a single machine.
     20 
     21 For a global installation, allowing system-wide access to the executable and
     22 library/documentation files, you can either install it from a ready-made
     23 distribution, or set some symbolic links to one of the local installation
     24 directories as described below.
     25 
     26 Note that you are still free to have local installations along with a global
     27 installation, and invoke them explicitly as desired.
     28 
     29 
     30       Local Installation
     31       ------------------
     32 
     33 1. Unpack the distribution
     34 
     35       $ tar xfz picoLisp-XXX.tgz
     36 
     37 2. Change the directory
     38 
     39       $ cd picoLisp-XXX
     40 
     41 3. Compile the PicoLisp interpreter
     42 
     43       $ (cd src; make)
     44 
     45    or - if you have an x86-64 system (under Linux, FreeBSD or SunOS), or a ppc64
     46    system (under Linux) - build the 64-bit version
     47 
     48       $ (cd src64; make)
     49 
     50    To use the 64-bit version also on systems which are not natively supported,
     51    you can build the emulator
     52 
     53       $ (cd src64; make emu)
     54 
     55    Note that the emulator's execution speed is 10 to 20 times slower than the
     56    native versions.
     57 
     58    In all three cases (32-bits, 64-bits, or emulator), the executable
     59    bin/picolisp will be created.
     60 
     61 
     62    To build the 64-bit version the first time (bootstrapping), you have the
     63    following three options:
     64 
     65    - If a Java runtime system (version 1.6 or higher) is installed, it will
     66      build right out of the box.
     67 
     68    - Otherwise, download one of the pre-generated "*.s" file packages
     69 
     70      - http://software-lab.de/x86-64.linux.tgz
     71      - http://software-lab.de/x86-64.freeBsd.tgz
     72      - http://software-lab.de/x86-64.sunOs.tgz
     73      - http://software-lab.de/ppc64.linux.tgz
     74 
     75    - Else, build a 32-bit version first, and use the resulting bin/picolisp to
     76      generate the "*.s" files:
     77 
     78       $ (cd src; make)
     79       $ (cd src64; make x86-64.linux)
     80 
     81    After that, the 64-bit binary can be used to rebuild itself.
     82 
     83 
     84    Note that on the BSD family of operating systems, 'gmake' must be used
     85    instead of 'make'.
     86 
     87 
     88       Global Installation
     89       -------------------
     90 
     91 The recommended way for a global installation is to use a picolisp package from
     92 the OS distribution.
     93 
     94 If that is not available, you can (as root) create symbolic links from /usr/lib
     95 and /usr/bin to a local installation directory:
     96 
     97    # ln -s /<installdir> /usr/lib/picolisp
     98    # ln -s /usr/lib/picolisp/bin/picolisp /usr/bin
     99    # ln -s /usr/lib/picolisp/bin/pil /usr/bin
    100 
    101 For additional access to the man pages and some examples:
    102 
    103    # ln -s /<installdir>/man/man1/picolisp.1 /usr/share/man/man1
    104    # ln -s /<installdir>/man/man1/pil.1 /usr/share/man/man1
    105    # ln -s /<installdir> /usr/share/picolisp
    106 
    107 
    108       Invocation
    109       ----------
    110 
    111 In a global installation, the 'pil' command should be used. You can either start
    112 in plain or in debug mode. The difference is that for debug mode the command is
    113 followed by single plus ('+') sign. The '+' must be the very last argument on
    114 the command line.
    115 
    116    $ pil       # Plain mode
    117    :
    118 
    119    $ pil +     # Debug mode
    120    :
    121 
    122 In both cases, the colon ':' is PicoLisp's prompt. You may enter some Lisp
    123 expression,
    124 
    125    : (+ 1 2 3)
    126    -> 6
    127 
    128 To exit the interpreter, enter
    129 
    130    : (bye)
    131 
    132 or just type Ctrl-D.
    133 
    134 
    135 For a local invocation, specify a path name, e.g.
    136 
    137    $ ./pil     # Plain mode
    138    :
    139 
    140    $ ./pil +   # Debug mode
    141    :
    142 
    143 or
    144 
    145    $ /home/app/pil  # Invoking a local installation from some other directory
    146 
    147 Note that 'pil' can also serve as a template for your own stand-alone scripts.
    148 
    149 
    150 If you just want to test the ready-to-run Ersatz PicoLisp (it needs a Java
    151 runtime system), use
    152 
    153    $ ersatz/pil +
    154    :
    155 
    156 instead of './pil +'.
    157 
    158 
    159       Documentation
    160       -------------
    161 
    162 For further information, please look at "doc/index.html". There you find the
    163 PicoLisp Reference Manual ("doc/ref.html"), the PicoLisp tutorials
    164 ("doc/tut.html", "doc/app.html", "doc/select.html" and "doc/native.html"), and
    165 the frequently asked questions ("doc/faq.html").
    166 
    167 For details about the 64-bit version, refer to "doc64/README", "doc64/asm" and
    168 "doc64/structures".
    169 
    170 As always, the most accurate and complete documentation is the source code ;-)
    171 Included in the distribution are many utilities and pet projects, including
    172 tests, demo databases and servers, games (chess, minesweeper), and more.
    173 
    174 Any feedback is welcome!
    175 Hope you enjoy :-)
    176 
    177 --------------------------------------------------------------------------------
    178 
    179    Alexander Burger
    180    Software Lab. / 7fach GmbH
    181    Bahnhofstr. 24a, D-86462 Langweid
    182    abu@software-lab.de, http://www.software-lab.de, +49 8230 5060