224 lines
7.7 KiB
Plaintext
224 lines
7.7 KiB
Plaintext
ALE 0.9.0.3 Installation Guide
|
|
|
|
David Hilvert
|
|
|
|
Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007, 2008 David Hilvert
|
|
|
|
This article is free documentation; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by the
|
|
Free Software Foundation; either version 3 of the License, or (at your
|
|
option) any later version.
|
|
|
|
This article is distributed in the hope that it will be useful, but
|
|
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
for more details.
|
|
|
|
You should have received a copy of the GNU General Public License along
|
|
with this article; if not, write to the Free Software Foundation, Inc., 51
|
|
Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
Abstract
|
|
|
|
This article includes download, build, and installation instructions.
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
1. Compiling from source
|
|
|
|
1.1. URLs
|
|
|
|
1.2. Build prerequisites
|
|
|
|
1.3. Extraction
|
|
|
|
1.4. Running configure
|
|
|
|
1.5. Configuration options
|
|
|
|
1.6. Cross-compilation
|
|
|
|
1.7. Further details
|
|
|
|
2. On-line resources
|
|
|
|
2.1. Mailing list
|
|
|
|
1. Compiling from source
|
|
|
|
1.1. URLs
|
|
|
|
o http://auricle.dyndns.org/ALE/download/ale-0.9.0.3.tar.gz
|
|
|
|
1.2. Build prerequisites
|
|
|
|
1.2.1. GCC C++ compiler
|
|
|
|
GCC version 3.2.3 with C++ support is known to build ALE successfully.
|
|
Older versions of GCC may fail to compile some versions of ALE.
|
|
|
|
1.2.2. Prerequisites for building on Windows
|
|
|
|
Successfully running the configuration script on Windows (e.g., for native
|
|
builds) may require installation of Cygwin. For more information on
|
|
Cygwin, see:
|
|
|
|
o http://www.cygwin.com/
|
|
|
|
Alternatively, this package can be cross-compiled for Windows on a
|
|
non-Windows architecture, provided that the appropriate cross-compilers
|
|
and libraries are available.
|
|
|
|
1.3. Extraction
|
|
|
|
Download the source archive file from the URL indicated in the section
|
|
'URLs', and invoke:
|
|
|
|
tar xzf ale-0.9.0.3.tar.gz
|
|
cd ale-0.9.0.3
|
|
|
|
Invoking 'ls configure' afterward should reveal an executable script
|
|
'configure'. This script is used to determine the capabilities of the
|
|
system that will run the software.
|
|
|
|
1.4. Running configure
|
|
|
|
This package uses a configuration script, 'configure', generated by the
|
|
GNU project build tools ("autotools"). For most cases, it should be
|
|
sufficient to invoke:
|
|
|
|
./configure
|
|
make
|
|
make install
|
|
|
|
In cases where the defaults are not adequate, configuration options can be
|
|
passed to the configuration script.
|
|
|
|
1.5. Configuration options
|
|
|
|
Configuration options can be passed to the 'configure' script prior to
|
|
build and installation, as:
|
|
|
|
./configure --config-option1 --config-option2 ...
|
|
make
|
|
make install
|
|
|
|
Options specific to this package are described in the following
|
|
subsections. General configuration options are described in the file
|
|
'INSTALL' included in the source package.
|
|
|
|
1.5.1. ImageMagick Support
|
|
|
|
Enabling ImageMagick support allows ALE to make use of the file-handling
|
|
capabilities of ImageMagick ( http://imagemagick.org/ ). This includes
|
|
reading and writing a variety of file formats, including, among many
|
|
others, PNG and JPEG (two formats commonly used in web publishing) as well
|
|
as common interchange formats such as PPM and TIFF. ImageMagick 6.0.6 is
|
|
known to work with this version of ALE; certain older versions of
|
|
ImageMagick may cause compile, link, or runtime errors. By default,
|
|
support is automatically detected.
|
|
|
|
--with-imagemagick=auto Auto-detect ImageMagick support [default]
|
|
--with-imagemagick=yes Enable ImageMagick support
|
|
--with-imagemagick=no Disable ImageMagick support
|
|
|
|
1.5.2. Color Data Precision
|
|
|
|
ALE's internal data structures store each color channel within a pixel as
|
|
floating-point data; similarly, arithmetic operations on color channels
|
|
are performed in floating point. The available data-type configurations
|
|
are listed below, with typical data sizes indicated in parentheses.
|
|
|
|
--with-colors=single Use C++ 'float' data type (32-bit) [default]
|
|
--with-colors=double Use C++ 'double' data type (64-bit)
|
|
|
|
1.5.3. Coordinate Data Precision
|
|
|
|
In general, coordinate transformations used by ALE produce results outside
|
|
of the set of integers; hence, coordinates are treated as floating-point
|
|
data. The two available data-type configurations are listed below, with
|
|
typical data sizes indicated in parentheses.
|
|
|
|
--with-coords=single Use C++ 'float' data type (32-bit) [default]
|
|
--with-coords=double Use C++ 'double' data type (64-bit)
|
|
|
|
1.5.4. Thread support
|
|
|
|
Threads can improve performance on multiprocessor machines. POSIX threads
|
|
are currently supported.
|
|
|
|
--enable-threads=auto Auto-detect thread support. [default]
|
|
--enable-threads=yes Enable thread support.
|
|
--enable-threads=no Disable thread support.
|
|
|
|
1.5.5. FFTW Support
|
|
|
|
This feature is required in order to use the --fl option; it also
|
|
determines the approach to calculation of discrete Fourier transforms used
|
|
by the Irani-Peleg renderer. For more information on FFTW, see
|
|
http://fftw.org/.
|
|
|
|
--with-fftw3=auto Auto-detect FFTW3. [default]
|
|
--with-fftw3=yes Use FFTW3 discrete Fourier transform.
|
|
--with-fftw3=no Use built-in discrete Fourier transform.
|
|
|
|
1.5.6. Enable --wmx
|
|
|
|
This build option is required in order to use the --wmx option. If
|
|
--enable-wmx is specified, it is expected that fork() and execlp() calls
|
|
are available.
|
|
|
|
--enable-wmx=auto Automatically detect whether to enable --wmx
|
|
--enable-wmx=yes Enable --wmx
|
|
--enable-wmx=no Do not enable --wmx
|
|
|
|
1.5.7. Getsize
|
|
|
|
This build option is required to obtain additional output from --ui=tty.
|
|
If TIOCGWINSZ is not defined in <sys/ioctl.h>, however, additional output
|
|
will not be provided even if --enable-getsize is specified at build time.
|
|
|
|
--enable-getsize=auto Check for TIOCGWINSZ at build time. [default]
|
|
--enable-getsize=yes Configure to attempt to use TIOCGWINSZ
|
|
--enable-getsize=no Do not attempt to use TIOCGWINSZ
|
|
|
|
1.5.8. Assertions
|
|
|
|
Finding bugs within ALE, or within custom modifications to ALE, can be
|
|
simplified by enabling run-time assertions. These checks enforce
|
|
conditions believed to be necessary or desirable for correct program
|
|
operation. If a condition is not satisfied, ALE will abort and display a
|
|
message indicating the failed assertion.
|
|
|
|
--enable-assertions Enable assertions. [default]
|
|
--disable-assertions Disable assertions.
|
|
|
|
1.6. Cross-compilation
|
|
|
|
For cross-compilation, it may be necessary to specify both host and build
|
|
machine types, using the configure --host and --build options. For more
|
|
information on these options, see the file 'INSTALL' in the source
|
|
package.
|
|
|
|
1.7. Further details
|
|
|
|
General operation of the configure script is described in more detail in
|
|
the file 'INSTALL' in the source package.
|
|
|
|
2. On-line resources
|
|
|
|
Home Page http://auricle.dyndns.org/ALE/
|
|
git repository http://repo.or.cz/w/Ale.git
|
|
Mailing list archive http://ventricle.dyndns.org/pipermail/ale/
|
|
|
|
2.1. Mailing list
|
|
|
|
Bug reports, feature requests, patch and release announcements, and
|
|
related discussion can be sent to ale@ventricle.dyndns.org. Archives of
|
|
past postings and subscription information are available at the URLs
|
|
indicated below.
|
|
|
|
Posting address ale@ventricle.dyndns.org
|
|
Subscription info http://ventricle.dyndns.org/cgi-bin/mailman/listinfo/ale
|
|
Archives http://ventricle.dyndns.org/pipermail/ale/
|