mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-16 06:12:25 -08:00
Arithmetic operators *,+,/,- now have simple optimizers. Fixed several "bugs" in the C code to let ECL compile with GCC 4.0
113 lines
3.8 KiB
HTML
113 lines
3.8 KiB
HTML
<h2>Installation</h2>
|
|
|
|
<p>You should read the <a href="#configure">Autoconf based configuration</a>
|
|
if you use ECL on a unix-like platform, such as
|
|
<ul>
|
|
<li>Linux, NetBSD, FreeBSD, Solaris 9
|
|
<li>Mac OSX (See <a href="#osx">below</a>)
|
|
<li>Cygwin or Mingw32 on Windows.
|
|
</ul>
|
|
|
|
<p>If you want to compile ECL using Microsoft C++ you should read <a
|
|
href="#msvc">the appropiate section</a>.
|
|
|
|
<p>For OSX you should also read a section which specifies <a href="#osx">how
|
|
to build</a> ECL for different versions of the operating system.
|
|
|
|
<p>If you want to cross-compile ECL, there is also <a href="#cross">a
|
|
chapter</a> on how to pre-configure, write down a configuration file
|
|
and finish the compilation.
|
|
|
|
<h3><a name="configure">Autoconf based configuration</a></h3>
|
|
|
|
<ul>
|
|
<li>Unpack the tar file
|
|
<pre>
|
|
gunzip -c ecl.tgz | tar xf -
|
|
</pre>
|
|
|
|
<li>Run the configuration file.
|
|
<pre>
|
|
cd ecl-@PACKAGE_VERSION@
|
|
./configure
|
|
</pre>
|
|
The previous step creates a directory with the name <b>build</b>, and
|
|
stores a bunch of makefiles in it. <b>Note:</b> If you are building
|
|
under Solaris 9, you should rather use
|
|
<pre>
|
|
./configure --enable-slow-config --with-system-gmp=no
|
|
</pre>
|
|
because otherwise ECL will fail to detect the 64-bit capabilities of
|
|
the operating system.
|
|
|
|
<li>Use GNU make to begin building ECL
|
|
<pre>
|
|
make
|
|
</pre>
|
|
|
|
<li>If you want to test the fresh new executable before installing,
|
|
you can do it. You should invoke ECL from withing the build directory
|
|
using the "-dir ./" argument to advice it about the right place to
|
|
find header files, libraries, etc
|
|
<pre>
|
|
$ ./configure --prefix=$HOME
|
|
[...]
|
|
$ cd build
|
|
$ make
|
|
[...]
|
|
$ ./ecl -dir ./
|
|
</pre>
|
|
|
|
<li>Install it in the preconfigured location
|
|
<pre>
|
|
make install
|
|
</pre>
|
|
</ul>
|
|
|
|
<h3><a name="msvc">Microsoft C++</a></h3>
|
|
|
|
<p>If you have a commercial version of Microsoft Visual Studio, the
|
|
steps are simple:
|
|
<ul>
|
|
<li>Change to the <tt>msvc</tt> directory.
|
|
|
|
<li>Run <tt>nmake</tt> to build ECL.
|
|
|
|
<li>Run <tt>nmake flatinstall prefix=d:\Software\ECL</tt> where the
|
|
<tt>prefix</tt> is the directory where you want to install ECL.
|
|
|
|
<li>Optionally, if you want to build a self-installing executable, you can install <a href="http://nsis.sourceforge.net">NSIS</a>
|
|
and run <tt>nmake windows-nsi</tt>.
|
|
</ul>
|
|
|
|
<p>If you want to build ECL using the free Microsoft Visual C++
|
|
Toolkit 2003, you should follow these before building ECL:
|
|
<ul>
|
|
<li> Download and install <a href="http://msdn.microsoft.com/visualc/vctoolkit2003/">Microsoft Visual C++ Toolkit</a>.
|
|
<li> Download and install the <a href="http://www.microsoft.com/msdownload/platformsdk/sdkupdate/">Microsoft Platform SDK</a>
|
|
<li> Download NMAKE and install. There is an old version in <a href="http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe">Microsoft's download page</a>.
|
|
<li> Download and install the .NET Framework SDK. Copy the files msvcrt.lib an msvcrtd.lib from this toolkit to the directory where the Visual C++ Toolkit keeps it libraries. Afterwards you can uninstall the .NET SDK.
|
|
<li> Make sure that
|
|
<ul>
|
|
<li><tt>%PATH%</tt> includes the directories <tt>bin</tt> of both the C++ Toolkit, NMAKE and the SDK.
|
|
<li><tt>%INCLUDE%</tt> includes the directories <tt>include</tt> of both the C++ Toolkit and the SDK.
|
|
<li><tt>%LIB%</tt>includes the directories <tt>lib</tt> of both the C++ Toolkit and the SDK.
|
|
</ul>
|
|
</ul>
|
|
|
|
<h3><a name="osx">Mac OSX</a></h3>
|
|
|
|
<p>ECL now compiles with GCC 4.0. You need not specify any particular
|
|
options. But if you still experience some strange behaviour, try
|
|
compiling with a previous version of the compiler before reporting the
|
|
bug.
|
|
|
|
<p>For compiling with GCC 3.3 (shipped with XCode >= 2) you
|
|
must instruct <tt>configure</tt> to use a different compiler, as in
|
|
<pre>
|
|
$ CC=gcc-3.3 ./configure --prefix=/opt/local
|
|
</pre>
|
|
|
|
<h3><a name="cross">Cross compiling ECL</a></h3>
|
|
|
|
[To be written]
|