Building: Difference between revisions
Jump to navigation
Jump to search
(→Dependencies: Start splitting the super huge table of unmaintainability ;-)) |
(→Dependencies: Further Splitting the huge table.) |
||
Line 94: | Line 94: | ||
| Free Software Foundation | | Free Software Foundation | ||
|} | |} | ||
=== Documentation tools === | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Dependency | ! Dependency | ||
! Description | ! Description | ||
! License / Copyright | ! License / Copyright | ||
! Level | ! Level | ||
|- | |- | ||
| [http://pages.cs.wisc.edu/~ghost/gsview/epstool.htm epstool] | | [http://pages.cs.wisc.edu/~ghost/gsview/epstool.htm epstool] | ||
| Epstool is a utility to create or extract preview images in EPS files, fix bounding boxes and convert to bitmaps. | | Epstool is a utility to create or extract preview images in EPS files, fix bounding boxes and convert to bitmaps. | ||
| GNU GPL v2.0 | | GNU GPL v2.0 | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 114: | Line 112: | ||
| FTGL is a free cross-platform Open Source C++ library that uses Freetype2 to simplify rendering fonts in OpenGL applications. | | FTGL is a free cross-platform Open Source C++ library that uses Freetype2 to simplify rendering fonts in OpenGL applications. | ||
| Provided "as is" -- various authors | | Provided "as is" -- various authors | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 120: | Line 117: | ||
| GL2PS is a C library providing high quality vector output for any OpenGL application. | | GL2PS is a C library providing high quality vector output for any OpenGL application. | ||
| GNU LGPL v2.0 | | GNU LGPL v2.0 | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 126: | Line 122: | ||
| Translates PostScript and PDF graphics into other vector formats. | | Translates PostScript and PDF graphics into other vector formats. | ||
| GNU GPL v2.0 | | GNU GPL v2.0 | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 132: | Line 127: | ||
| Perl script which converts Texinfo source files to HTML output. | | Perl script which converts Texinfo source files to HTML output. | ||
| GNU GPL v3.0 | | GNU GPL v3.0 | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 138: | Line 132: | ||
| Documentation system that uses a single source to produce both on-line information and printed output. | | Documentation system that uses a single source to produce both on-line information and printed output. | ||
| GNU GPL v3.0 | | GNU GPL v3.0 | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 144: | Line 137: | ||
| Mixed bag of generic macro packages and fonts. | | Mixed bag of generic macro packages and fonts. | ||
| Freely redistributable as defined by the Free Software Foundation | | Freely redistributable as defined by the Free Software Foundation | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 150: | Line 142: | ||
| Compiler for TeX doumentation. | | Compiler for TeX doumentation. | ||
| Freely redistributable as defined by the Free Software Foundation | | Freely redistributable as defined by the Free Software Foundation | ||
| style="background:green" | | | style="background:green" | | ||
|- | |- | ||
Line 156: | Line 147: | ||
| Tanslates figures generated by xfig to a large variety of formats. | | Tanslates figures generated by xfig to a large variety of formats. | ||
| BSD Style License | | BSD Style License | ||
| style="background:green" | | | style="background:green" | | ||
|} | |||
=== External tools and libraries === | |||
{| class="wikitable" | |||
|- | |||
! Dependency | |||
! Description | |||
! License / Copyright | |||
! Level | |||
|- | |- | ||
| [http://www.netlib.org/blas BLAS] | | [http://www.netlib.org/blas BLAS] | ||
| Basic Linear Algebra Subroutine library | | Basic Linear Algebra Subroutine library | ||
| Free - proper attribution request | | Free - proper attribution request | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 169: | Line 167: | ||
| Linear Algebra Package | | Linear Algebra Package | ||
| Free - proper attribution request | | Free - proper attribution request | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 175: | Line 172: | ||
| Perl Compatible Regular Expression library | | Perl Compatible Regular Expression library | ||
| Free | | Free | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 181: | Line 177: | ||
| Command-line editing library | | Command-line editing library | ||
| GNU GPL v3.0 | | GNU GPL v3.0 | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 187: | Line 182: | ||
| Solution of large-scale eigenvalue problems | | Solution of large-scale eigenvalue problems | ||
| BSD like - various authors | | BSD like - various authors | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 193: | Line 187: | ||
| Library for transferring data with URL syntax | | Library for transferring data with URL syntax | ||
| Free Software -- main author | | Free Software -- main author | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 199: | Line 192: | ||
| Library for computing discrete Fourier transforms | | Library for computing discrete Fourier transforms | ||
| MIT -- GNU GPL v2.0 | | MIT -- GNU GPL v2.0 | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 205: | Line 197: | ||
| Portable GUI toolkit | | Portable GUI toolkit | ||
| GNU GPL v2.0 with static linking exception | | GNU GPL v2.0 with static linking exception | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 211: | Line 202: | ||
| Library for configuring and customizing font access | | Library for configuring and customizing font access | ||
| Provided "as is" -- various authors | | Provided "as is" -- various authors | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 217: | Line 207: | ||
| Portable font engine | | Portable font engine | ||
| compatible with GNU GPL v3.0 | | compatible with GNU GPL v3.0 | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 223: | Line 212: | ||
| GNU Linear Programming Kit | | GNU Linear Programming Kit | ||
| GNU GPL v3.0 | | GNU GPL v3.0 | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 229: | Line 217: | ||
| Interactive graphics program | | Interactive graphics program | ||
| Provided "as is" -- various authors | | Provided "as is" -- various authors | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 235: | Line 222: | ||
| Image processing library | | Image processing library | ||
| various -- integrates many third-party libs | | various -- integrates many third-party libs | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 241: | Line 227: | ||
| Library for manipulating portable data files | | Library for manipulating portable data files | ||
| BSD - like | | BSD - like | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 247: | Line 232: | ||
| API for portable 2D and 3D graphics | | API for portable 2D and 3D graphics | ||
| Free specs -- license is driver dependent | | Free specs -- license is driver dependent | ||
| style="background:red" | | | style="background:red" | | ||
|- | |- | ||
Line 253: | Line 237: | ||
| Computational geometry library | | Computational geometry library | ||
| Free software -- specific | | Free software -- specific | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 259: | Line 242: | ||
| QR factorization updating library | | QR factorization updating library | ||
| GNU GPL v3.0 | | GNU GPL v3.0 | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 265: | Line 247: | ||
| Sparse matrix factorization library | | Sparse matrix factorization library | ||
| Main author | | Main author | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|- | |- | ||
Line 271: | Line 252: | ||
| Data compression library | | Data compression library | ||
| Provided "as is" -- various authors | | Provided "as is" -- various authors | ||
| style="background:yellow" | | | style="background:yellow" | | ||
|} | |} |
Revision as of 06:27, 25 October 2019
General information about building the Octave source for different operating systems.
General steps
Build from the development repository | Build from a release |
---|---|
Install all build dependencies (see below). | |
hg clone https://www.octave.org/hg/octave && \ cd octave && \ ./bootstrap |
wget https://ftpmirror.gnu.org/octave/octave-9.2.0.tar.gz && \ tar -xzf octave-9.2.0.tar.gz |
mkdir .build && \ cd .build && \ ./../configure --prefix=$HOME/my_octave && \ [1] make -j2 && \ [2] make check && \ make install |
- Linux
- macOS
- Windows
- Building on Cygwin platform
- MXE cross compiler
We try to keep build instructions up to date in the source tree. Please clone using Mercurial or download it to see the README.
There are also instructions in the manual.
Dependencies
Critical | |
Recommended | |
Not critical |
Build tools
Dependency | Description | License / Copyright |
---|---|---|
C++, C, and Fortran compilers | Compiling the source code | GNU GPL v3.0 |
GNU Make | Makefile processor | GNU GPL v3.0 |
Unix utilities: gawk, gperf, less, ncurses | Miscellaneous tasks | GNU GPL v3.0 |
Bison | Parser generator | GNU GPL v3.0 |
Flex | Lexical analyzer | The Flex project |
Autoconf | Software configuration | GNU GPL v3.0 |
Automake | Makefile generator | GNU GPL v3.0 |
Libtool | Dependency of automake | Free Software Foundation |
Documentation tools
Dependency | Description | License / Copyright | Level |
---|---|---|---|
epstool | Epstool is a utility to create or extract preview images in EPS files, fix bounding boxes and convert to bitmaps. | GNU GPL v2.0 | |
FTGL | FTGL is a free cross-platform Open Source C++ library that uses Freetype2 to simplify rendering fonts in OpenGL applications. | Provided "as is" -- various authors | |
GL2PS | GL2PS is a C library providing high quality vector output for any OpenGL application. | GNU LGPL v2.0 | |
pstoedit | Translates PostScript and PDF graphics into other vector formats. | GNU GPL v2.0 | |
Texi2HTML | Perl script which converts Texinfo source files to HTML output. | GNU GPL v3.0 | |
Texinfo | Documentation system that uses a single source to produce both on-line information and printed output. | GNU GPL v3.0 | |
TeX Live generic | Mixed bag of generic macro packages and fonts. | Freely redistributable as defined by the Free Software Foundation | |
TeX Live | Compiler for TeX doumentation. | Freely redistributable as defined by the Free Software Foundation | |
transfig | Tanslates figures generated by xfig to a large variety of formats. | BSD Style License |
External tools and libraries
Dependency | Description | License / Copyright | Level |
---|---|---|---|
BLAS | Basic Linear Algebra Subroutine library | Free - proper attribution request | |
LAPACK | Linear Algebra Package | Free - proper attribution request | |
PCRE | Perl Compatible Regular Expression library | Free | |
GNU Readline | Command-line editing library | GNU GPL v3.0 | |
ARPACK | Solution of large-scale eigenvalue problems | BSD like - various authors | |
cURL | Library for transferring data with URL syntax | Free Software -- main author | |
FFTW3 | Library for computing discrete Fourier transforms | MIT -- GNU GPL v2.0 | |
FLTK | Portable GUI toolkit | GNU GPL v2.0 with static linking exception | |
fontconfig | Library for configuring and customizing font access | Provided "as is" -- various authors | |
FreeType | Portable font engine | compatible with GNU GPL v3.0 | |
GLPK | GNU Linear Programming Kit | GNU GPL v3.0 | |
gnuplot | Interactive graphics program | Provided "as is" -- various authors | |
GraphicsMagick++ | Image processing library | various -- integrates many third-party libs | |
HDF5 | Library for manipulating portable data files | BSD - like | |
OpenGL | API for portable 2D and 3D graphics | Free specs -- license is driver dependent | |
Qhull | Computational geometry library | Free software -- specific | |
QRUPDATE | QR factorization updating library | GNU GPL v3.0 | |
SuiteSparse | Sparse matrix factorization library | Main author | |
zlib | Data compression library | Provided "as is" -- various authors |