Installation
The SourceForge repository contains several compiled versions of Reduce, including the complete sources for both Reduce and the underlying Lisp systems.
Contents
Compiled Versions
There are several compiled versions available for download. To obtain one of these, go to the project homepage at SourceForge, click on the "Files" link at the left of the page near the top. You will then see several instances of the available binaries. Please use the latest version if that meets your needs. Otherwise, click on the other links, and a variety of versions will be displayed. Hopefully one of these will meet your needs. The relevant files are there in some archive format suitable for your architecture. Among them should be a Reduce executable.
Compiling from Source
If none of the above versions meets your needs, or you are interested in a newer version containing the latest features, please download the complete source files and compile them yourself.
For this you need the "Subversion" program svn. If you don't have this, you will need to obtain it from somewhere. Once that is available, you can say
svn co http://svn.code.sf.net/p/reduce-algebra/code/trunk reduce-algebra
This will download all relevant files to a sub-directory
reduce-algebra
. To create the necessary executables, go
cd reduce-algebra
Depending on which underlying Lisp you want to have available, pick one of the following options:
./configure --with-csl
./configure --with-psl
You can configure for both of the Lisps, but you have to use separate configure commands for this.
Finally, type
make
After compilation a suitable executable redcsl
or
redpsl
(with a .bat
extension on Windows)
will be found in the reduce-algebra/bin
subdirectory.
There is no make install
for installing things somewhere
else in your file tree. We recommend to add
reduce-algebra/bin
to your PATH.
Required Packages for CSL Reduce Compilation on Linux
These are the Ubuntu packages, necessary for building CSL Reduce on Ubuntu 14.04:
- g++
- libx11-dev
- libxft-dev
- libxext-dev
- libncurses5-dev
So the required line before building is:
sudo apt-get install g++ libx11-dev libxft-dev libxext-dev libncurses5-dev
We expect other Linux distributions to be very similar about this.
Known Problems
Bugs and Bugfixes
The first and most important thing to say here is that if you have any problems, then please report them, e.g., via the SourceForge bug tracker. Unless we know exactly what problems are—and for choice have compact examples that reproduce them—we are not even liable to start trying to fix them! So the proper place to find a list of "Known Problems" is the Bug Tracker where (if you persist in working through the SourceForge interface) you can find all the bugs that have been reported to us since the Open Source release of Reduce was made, together with annotations showing the bugs that we believe have been fixed.
If you check out a full copy of Reduce from SourceForge or collect the source package, you should find a directory called "buglist" that contains some information about other issues. Some of these may in fact have been sorted out since, and our policy should be to migrate from a directory like this to the bug tracker.
Other queries from users will appear on the newsgroup or forum, so if you have a problem you may wish to check those to see if your problem is one that has arisen before (and if anybody has found a work-around).
If you are able to suggest a resolution to any bug or are interested in working on one of them, consider posting to the developer's forum.
Frontend-Related Issues
CSL Reduce comes with a FOX toolkit-based GUI. If you want to compile CSL Reduce without this GUI, then go
./configure --with-csl --without-gui
In this case you don't even need to install the packages libx11-dev,
libxft-dev, and libxext-dev listed above. The
option --without-gui
is especially interesting if you
have a purely "text-based" environment, e.g., in Cygwin or on a Linux
server.
With CSL Reduce, there were some glitches with the mathematical
prettyprinting of expressions in early releases, and some people view
the exact spacing in the mathematical display as not being fully to
their taste. Since it is relatively new code, there may be additional
problems, but unless you report them they will not get looked at. If
you need to turn this feature off while waiting for a resolution to
some particular problem that you find you can say off
fancy;
in Reduce.
There are some keyboard problems with the CSL Reduce GUI on MacOS X
with certain localized keyboards. It appears that many other X
Window-based applications have had difficulty with the MacOS X server
in the context of non-US keyboards, and so at present we do not have
reason to believe that this is anything that can be sensibly corrected
within Reduce! If you are having problems with CSL Reduce GUI, or
generally prefer a command-line interface, you can run CSL Reduce in
command-line mode via the option -w
.
You might find that the command-line interface of both PSL and CSL Reduce is not very user-friendly. Consider using Redfront.
Version and Architecture-Related Issues
At present for a collection of reasons too messy to discuss here there are no PSL pre-built downloads provided via SourceForge. To obtain a PSL-based version of Reduce, you must compile it yourself as described above. You may of course check back with us every month or two to see if this situation has changed.
If you have a shared file-space and you connect to it from a variety
of machines that have different architectures or that run different
operating systems or operating system releases, then you may find it
helpful to read the reduce-algebra/bin/README
file that
explains how it is arranged that for all the main parts of Reduce you
can at least almost survive without having to put too much thought
into the potential system clashes. The main trick is that you will
need to run, e.g., bin/redpsl-s rather than bin/redpsl (etc.) and
system startup will be marginally slower for you.
Redfront
Redfront is a terminal-based frontend for Reduce using the editline library, which is similar to the GNU readline. For compiling Redfront, go
cd reduce-algebra/generic/redfront make install
After this, you will find suitable executables rfcsl
and rfpsl
in reduce-algebra/bin
.