Skip to content

1.1 Note on compilation

Claude Roux edited this page Nov 14, 2022 · 38 revisions

Note on compiling

Version française

If you want to compile the whole project, you need to execute:

python configure.py
make all libs

The script: configure.py will check your configuration and adjust your compiling environment accordingly.

The compilation process requires two files: Makefile and Makefile.in.

  • Makefile should not be changed. It contains the instructions to compile both the interpreter and the libraries. It imports Makefile.in.

  • Makefile.in is the file that is updated by configure.py. It contains the specific paths to the different libraries that might be required to compile the whole project.

LispE is quite small and the whole project compiles in about a minute on most platforms.

Linux Specifics

The lispe binary has its own internal editor. If you run lispe without any arguments, the internal editor starts with the command: edit. You can also start lispe with a program and call the editor directly: lispe -e myfile.lisp.

You can find a manual for this editor here: help

IMPORTANT: By default, on Linux platforms, the mouse is not activated. You can either use Ctrl-x-m within the editor or launch lispe with the option: -m.

lispe -m...

If when you move the mouse, you see some weird characters on screen, it means that the mouse follows a different sets of instruction. You can then run lispe with the option: -vt100.

lispe -m -vt100

We deactivate the mouse by default to avoid finding the hard way that your terminal is not compatible with these mouse instructions.

LISPEPATH

The second step is to initialise the environment variable: LISPEPATH to the directory that contains the libraries that you have just compiled:

export LISPEPATH=/home/myname/lispe/bin

If you decide to move them to another directory, then you will need to update LISPEPATH accordingly.

Mac OS

We already provide binaries for Mac OS Intel and M1.

Windows

We provide specific makefiles for Windows, for Visual 2017.

Note: We expect Python 3.7 to be installed on C:\Python37, however, you can use any version 3.x of Python as long as you modify the include path and the library path in python.vcxproj, which is part of the lispe.vcxproj global Makefile.

Please note that precompiled versions are available here

Compiling the Graphic Library

LispE provides its own graphic library, which is based on FLTK. The code is here: gui

Windows and Mac OS Libraries

For legal reasons, we cannot provide these libraries with this archive. However, we have made these libraries available on a different GitHub repository: https://github.com/clauderouxster/lispegui.

All you need is to copy the include and libs content to your local gui directory.

This repository includes specific libraries of FLTK that have been precompiled for Windows, Mac OS intel and Mac OS Apple Silicon. Note that the Windows version has been slightly modified to correct a problem with the timer.

Finally, this repository also includes the Linux include files that you might need to compile the LispE gui on your machine.

Linux

configure.py looks for the presence of this library on your system, which is usually provided with most versions of Linux.

If fltk is not installed on your machine, you can install it either by recompiling the source code provided on https://www.fltk.org, or by installing it with the standard install procedure on your machine.

Note that we use the 1.3 version on most platforms except for Mac OS Apple Silicon where we use the 1.4 version.

Compile gui

Note that make libs does not compile the gui library.

You need to go into the gui directory yourself and execute: make all.

Clone this wiki locally