octave: Build Tools
E.1.2 Build Tools
-----------------
The following tools are required:
C++, C, and Fortran compilers
The Octave sources are primarily written in C++, but some portions
are also written in C and Fortran. The Octave sources are intended
to be portable. Recent versions of the GNU compiler collection
(GCC) should work (<http://gcc.gnu.org>). If you use GCC, you
should avoid mixing versions. For example, be sure that you are
not using the obsolete ‘g77’ Fortran compiler with modern versions
of ‘gcc’ and ‘g++’.
GNU Make
Tool for building software (<http://www.gnu.org/software/make>).
Octave’s build system requires GNU Make. Other versions of Make
will not work. Fortunately, GNU Make is highly portable and easy
to install.
AWK, sed, and other Unix utilities
Basic Unix system utilities are required for building Octave. All
will be available with any modern Unix system and also on Windows
with either Cygwin or MinGW and MSYS.
Additionally, the following tools may be needed:
Bison
Parser generator (<http://www.gnu.org/software/bison>). You will
need Bison if you modify the ‘oct-parse.yy’ source file or if you
delete the files that are generated from it.
Flex
Lexer analyzer (<http://www.gnu.org/software/flex>). You will need
Flex if you modify the ‘lex.ll’ source file or if you delete the
files that are generated from it.
Autoconf
Package for software configuration
(<http://www.gnu.org/software/autoconf>). Autoconf is required if
you modify Octave’s ‘configure.ac’ file or other files that it
requires.
Automake
Package for Makefile generation
(<http://www.gnu.org/software/automake>). Automake is required if
you modify Octave’s ‘Makefile.am’ files or other files that they
depend on.
Libtool
Package for building software libraries
(<http://www.gnu.org/software/libtool>). Libtool is required by
Automake.
gperf
Perfect hash function generator
(<http://www.gnu.org/software/gperf>). You will need gperf if you
modify the ‘octave.gperf’ file or if you delete the file that is
generated from it.
Texinfo
Package for generating online and print documentation
(<http://www.gnu.org/software/texinfo>). You will need Texinfo to
build Octave’s documentation or if you modify the documentation
source files or the docstring of any Octave function.