Mercurial > octave-nkf
comparison doc/interpreter/install.txi @ 7091:5608935ff522 ss-2-9-16
[project @ 2007-10-31 21:26:39 by jwe]
author | jwe |
---|---|
date | Wed, 31 Oct 2007 21:29:24 +0000 |
parents | 503001863427 |
children | 30c0533e39ae |
comparison
equal
deleted
inserted
replaced
7090:47c1736d7371 | 7091:5608935ff522 |
---|---|
57 of @var{prefix} is @file{/usr/local}. | 57 of @var{prefix} is @file{/usr/local}. |
58 | 58 |
59 @item --srcdir=@var{dir} | 59 @item --srcdir=@var{dir} |
60 Look for Octave sources in the directory @var{dir}. | 60 Look for Octave sources in the directory @var{dir}. |
61 | 61 |
62 @item --with-f2c | 62 @item --enable-bounds-check |
63 Use @code{f2c} even if a Fortran compiler is available. | 63 Enable bounds checking for indexing operators in the internal array |
64 | 64 classes. This option is primarily used for debugging Octave. Building |
65 @item --with-f77 | 65 Octave with this option has a negative impact on performace and is not |
66 Use @code{f77} to compile Fortran code. You may also specify the name | 66 recommended for general use. |
67 of the compiler to use as an optional argument. For example, | 67 |
68 @code{--with-f77=g77} sets the name of the Fortran compiler to | 68 @item --enable-64 |
69 @code{g77}. | 69 This is an @strong{experimental} option to enable Octave to use 64-bit |
70 integers for array dimensions and indexing on 64-bit platforms. You | |
71 probably don't want to use this option unless you know what you are | |
72 doing. | |
73 | |
74 If you use @code{--enable-64}, you must ensure that your Fortran | |
75 compiler generates code with 8 byte signed @code{INTEGER} values, and | |
76 that your BLAS and LAPACK libraries are compiled to use 8 byte | |
77 signed integers for array dimensions and indexing. | |
70 | 78 |
71 @item --enable-shared | 79 @item --enable-shared |
72 Create shared libraries. If you are planning to use | 80 Create shared libraries (this is the default). If you are planning to |
73 @code{--enable-lite-kernel} or the dynamic loading features, you will | 81 use the dynamic loading features, you will probably want to use this |
74 probably want to use this option. It will make your @file{.oct} files | 82 option. It will make your @file{.oct} files much smaller and on some |
75 much smaller and on some systems it may be necessary to build shared | 83 systems it may be necessary to build shared libraries in order to use |
76 libraries in order to use dynamically linked functions. | 84 dynamically linked functions. |
77 | 85 |
78 You may also want to build a shared version of @code{libstdc++}, if your | 86 You may also want to build a shared version of @code{libstdc++}, if your |
79 system doesn't already have one. | 87 system doesn't already have one. |
80 | 88 |
81 @item --enable-dl | 89 @item --enable-dl |
82 Use @code{dlopen} and friends to make Octave capable of dynamically | 90 Use @code{dlopen} and friends to make Octave capable of dynamically |
83 linking externally compiled functions. This only works on systems that | 91 linking externally compiled functions (this is the default if |
84 actually have these functions. If you plan on using this feature, you | 92 @code{--enable-shared} is specified). This option only works on systems |
93 that actually have these functions. If you plan on using this feature, you | |
85 should probably also use @code{--enable-shared} to reduce the size of | 94 should probably also use @code{--enable-shared} to reduce the size of |
86 your @file{.oct} files. | 95 your @file{.oct} files. |
87 | |
88 @item --enable-shl | |
89 Use @code{shl_load} and friends to make Octave capable of dynamically | |
90 linking externally compiled functions. This only works on systems that | |
91 actually have these functions (only HP-UX systems). If you plan on | |
92 using this feature, you should probably also use @code{--enable-shared} | |
93 to reduce the size of your @file{.oct} files. | |
94 | |
95 @item --enable-lite-kernel | |
96 Compile smaller kernel. This currently requires the dynamic linking | |
97 functions @code{dlopen} or @code{shl_load} and friends so that Octave | |
98 can load functions at run time that are not loaded at compile time. | |
99 | 96 |
100 @item --without-blas | 97 @item --without-blas |
101 Compile and use the generic BLAS and LAPACK versions included with | 98 Compile and use the generic BLAS and LAPACK versions included with |
102 Octave. By default, configure first looks for BLAS and LAPACK matrix | 99 Octave. By default, configure first looks for BLAS and LAPACK matrix |
103 libraries on your system, including optimized BLAS implementations such | 100 libraries on your system, including optimized BLAS implementations such |
106 operations.) Only use this option if your system has BLAS/LAPACK | 103 operations.) Only use this option if your system has BLAS/LAPACK |
107 libraries that cause problems for some reason. You can also use | 104 libraries that cause problems for some reason. You can also use |
108 @code{--with-blas=lib} to specify a particular BLAS library | 105 @code{--with-blas=lib} to specify a particular BLAS library |
109 @code{-llib} that configure doesn't check for automatically. | 106 @code{-llib} that configure doesn't check for automatically. |
110 | 107 |
108 @item --without-ccolamd | |
109 Don't use CCOLAMD, disable some sparse matrix functionality. | |
110 | |
111 @item --without-colamd | |
112 Don't use COLAMD, disable some sparse matrix functionality. | |
113 | |
114 @item --without-curl | |
115 Don't use the cURL, disable the @code{urlread} and @code{urlwrite} | |
116 functions. | |
117 | |
118 @item --without-cxsparse | |
119 Don't use CXSPARSE, disable some sparse matrix functionality. | |
120 | |
121 @item --without-umfpack | |
122 Don't use UMFPACK, disable some sparse matrix functionality. | |
123 | |
124 @item --without-fftw | |
125 Use the included fftpack library instead of the FFTW library. | |
126 | |
127 @item --without-glpk | |
128 Don't use the GLPK library for linear programming. | |
129 | |
130 @item --without-hdf5 | |
131 Don't use the HDF5 library for reading and writing HDF5 files. | |
132 | |
133 @item --without-zlib | |
134 Don't use the zlib library, disable data file compression and support | |
135 for recent MAT file formats. | |
136 | |
137 @item --without-lapack | |
138 Compile and use the generic BLAS and LAPACK versions included with | |
139 Octave. By default, configure first looks for BLAS and LAPACK matrix | |
140 libraries on your system, including optimized BLAS implementations such | |
141 as the free ATLAS 3.0, as well as vendor-tuned libraries. (The use of | |
142 an optimized BLAS will generally result in several-times faster matrix | |
143 operations.) Only use this option if your system has BLAS/LAPACK | |
144 libraries that cause problems for some reason. You can also use | |
145 @code{--with-blas=lib} to specify a particular BLAS library | |
146 @code{-llib} that configure doesn't check for automatically. | |
147 | |
111 @item --help | 148 @item --help |
112 Print a summary of the options recognized by the configure script. | 149 Print a summary of the options recognized by the configure script. |
113 @end table | 150 @end table |
114 | 151 |
115 See the file @file{INSTALL} for more information about the command line | 152 See the file @file{INSTALL} for more information about the command line |
127 Gnuplot is a command-driven interactive function plotting program. | 164 Gnuplot is a command-driven interactive function plotting program. |
128 Gnuplot is copyrighted, but freely distributable. The `gnu' in gnuplot | 165 Gnuplot is copyrighted, but freely distributable. The `gnu' in gnuplot |
129 is a coincidence---it is not related to the GNU project or the FSF in | 166 is a coincidence---it is not related to the GNU project or the FSF in |
130 any but the most peripheral sense. | 167 any but the most peripheral sense. |
131 | 168 |
132 To compile Octave, you will need a recent version of GNU Make. You | 169 To compile Octave, you will need a recent version of GNU Make. You will |
133 will also need @code{g++} 2.7.2 or later. Version 2.8.0 or @code{egcs} | 170 also need a recent version of @code{g++} or other ANSI C++ compiler. You |
134 1.0.x should work. Later versions may work, but C++ is still evolving, | 171 will also need a Fortran 77 compiler or @code{f2c}. If you use |
135 so don't be too surprised if you run into some trouble. | 172 @code{f2c}, you will need a script like @code{fort77} that works like a |
136 | 173 normal Fortran compiler by combining @code{f2c} with your C compiler in |
137 It is no longer necessary to have @code{libg++}, but you do need to have | 174 a single script. |
138 the GNU implementation of @code{libstdc++}. If you are using @code{g++} | |
139 2.7.2, @code{libstdc++} is distributed along with @code{libg++}, but for | |
140 later versions, @code{libstdc++} is distributed separately. For | |
141 @code{egcs}, @code{libstdc++} is included with the compiler | |
142 distribution. | |
143 | 175 |
144 If you plan to modify the parser you will also need GNU @code{bison} and | 176 If you plan to modify the parser you will also need GNU @code{bison} and |
145 @code{flex}. If you modify the documentation, you will need GNU | 177 @code{flex}. If you modify the documentation, you will need GNU |
146 Texinfo, along with the patch for the @code{makeinfo} program that is | 178 Texinfo, along with the patch for the @code{makeinfo} program that is |
147 distributed with Octave. | 179 distributed with Octave. |
151 anonymous ftp archives. The primary site is @url{ftp.gnu.org}, but it | 183 anonymous ftp archives. The primary site is @url{ftp.gnu.org}, but it |
152 is often very busy. A list of sites that mirror the software on | 184 is often very busy. A list of sites that mirror the software on |
153 @url{ftp.gnu.org} is available by anonymous ftp from | 185 @url{ftp.gnu.org} is available by anonymous ftp from |
154 @url{ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTP}. | 186 @url{ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTP}. |
155 | 187 |
156 If you don't have a Fortran compiler, or if your Fortran compiler | 188 You will need about 925 megabytes of disk storage to work with when |
157 doesn't work like the traditional Unix f77, you will need to have the | 189 building Octave from source (considerably less if you don't compile with |
158 Fortran to C translator @code{f2c}. You can get @code{f2c} from any | 190 debugging symbols). To do that, use the command |
159 number of anonymous ftp archives. The most recent version of @code{f2c} | |
160 is always available from @url{netlib.att.com}. | |
161 | |
162 On an otherwise idle Pentium 133 running Linux, it will take somewhere | |
163 between 1-1/2 to 3 hours to compile everything, depending on whether you | |
164 are building shared libraries. You will need about 100 megabytes of disk | |
165 storage to work with (considerably less if you don't compile with debugging | |
166 symbols). To do that, use the command | |
167 | 191 |
168 @example | 192 @example |
169 make CFLAGS=-O CXXFLAGS=-O LDFLAGS= | 193 make CFLAGS=-O CXXFLAGS=-O LDFLAGS= |
170 @end example | 194 @end example |
171 | 195 |