Talk:Build from source: Difference between revisions

Jump to navigation Jump to search
Format change
(Added lists of needed build packages)
(Format change)
Line 60: Line 60:


The following tools are required:  
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++.  
{| class="wikitable"
;GNU Make
|'''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++.  
: 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
|'''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.  
: 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.  
|-
|'''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:  
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.  
{| class="wikitable"
;Flex
|'''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.  
: 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
|'''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.  
: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
|'''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.  
: 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
|'''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.  
: Package for building software libraries (http://www.gnu.org/software/libtool). Libtool is required by Automake.
|-
;Gnulib  
|'''Libtool'''||Package for building software libraries (http://www.gnu.org/software/libtool). Libtool is required by Automake.
: <http://www.gnu.org/software/gnulib/>
|-
;GNU Make
|'''Gnulib'''||<http://www.gnu.org/software/gnulib/>
: <http://www.gnu.org/software/make/>
|-
;gperf  
|'''gperf'''||<http://www.gnu.org/software/gperf/>
: <http://www.gnu.org/software/gperf/>
|-
;Gzip  
|'''Gzip'''||<http://www.gnu.org/software/gzip/>
: <http://www.gnu.org/software/gzip/>
|-
;Mercurial  
|'''Mercurial'''||<http://mercurial.selenic.com/>
: <http://mercurial.selenic.com/>
|-
;Perl  
|'''Perl'''||<http://www.cpan.org/>
: <http://www.cpan.org/>
|-
;Rsync  
|'''Rsync'''||<http://samba.anu.edu.au/rsync/>
: <http://samba.anu.edu.au/rsync/>
|-
;Tar  
|'''Tar'''||<http://www.gnu.org/software/tar/>
: <http://www.gnu.org/software/tar/>
|}


===Run the bootstrap script===
===Run the bootstrap script===
19

edits

Navigation menu