annotate doc/interpreter/install.txi @ 11573:6f8ffe2c6f76

Grammarcheck txi files for 3.4 release.
author Rik <octave@nomad.inbox5.com>
date Wed, 19 Jan 2011 20:29:11 -0800
parents fd0a3ac60b0e
children 8e1ab522c902
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11523
fd0a3ac60b0e update copyright notices
John W. Eaton <jwe@octave.org>
parents: 11302
diff changeset
1 @c Copyright (C) 1996-2011 John W. Eaton
7018
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
2 @c
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
3 @c This file is part of Octave.
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
4 @c
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
5 @c Octave is free software; you can redistribute it and/or modify it
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
6 @c under the terms of the GNU General Public License as published by the
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
7 @c Free Software Foundation; either version 3 of the License, or (at
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
8 @c your option) any later version.
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
9 @c
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
10 @c Octave is distributed in the hope that it will be useful, but WITHOUT
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
11 @c ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
12 @c FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
13 @c for more details.
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
14 @c
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
15 @c You should have received a copy of the GNU General Public License
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
16 @c along with Octave; see the file COPYING. If not, see
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
17 @c <http://www.gnu.org/licenses/>.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
18
7018
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
19 @c The text of this file appears in the file INSTALL in the Octave
fd42779a8428 [project @ 2007-10-13 00:52:12 by jwe]
jwe
parents: 6778
diff changeset
20 @c distribution, as well as in the Octave manual.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
21
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
22 @ifclear INSTALLONLY
4167
aae05d51353c [project @ 2002-11-12 02:52:50 by jwe]
jwe
parents: 3960
diff changeset
23 @node Installation
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
24 @appendix Installing Octave
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
25 @end ifclear
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
26
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
27 @ifset INSTALLONLY
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
28
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
29 This file documents the installation of Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
30
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
31 Octave is free software; you can redistribute it and/or modify it
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
32 under the terms of the GNU General Public License as published by the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
33 Free Software Foundation.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
34
7144
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
35 @strong{Note:} This file is automatically generated from
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
36 @file{doc/interpreter/install.txi} in the Octave sources. To update
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
37 the documentation make changes to the .txi source file rather than this
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
38 derived file.
7144
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
39
4167
aae05d51353c [project @ 2002-11-12 02:52:50 by jwe]
jwe
parents: 3960
diff changeset
40 @node Installation
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
41 @chapter Installing Octave
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
42 @end ifset
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
43
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
44 @cindex installing Octave
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
45
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
46 Here is the procedure for installing Octave from scratch on a Unix
3862
75473e09e3eb [project @ 2001-11-14 19:30:25 by jwe]
jwe
parents: 3690
diff changeset
47 system.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
48
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
49 @itemize @bullet
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
50 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
51 Run the shell script @file{configure}. This will determine the features
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
52 your system has (or doesn't have) and create a file named
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
53 @file{Makefile} from each of the files named @file{Makefile.in}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
54
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
55 Here is a summary of the configure options that are most frequently used
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
56 when building Octave:
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
57
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
58 @table @code
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
59 @item --prefix=@var{prefix}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
60 Install Octave in subdirectories below @var{prefix}. The default value
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
61 of @var{prefix} is @file{/usr/local}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
62
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
63 @item --srcdir=@var{dir}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
64 Look for Octave sources in the directory @var{dir}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
65
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
66 @item --enable-bounds-check
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
67 Enable bounds checking for indexing operators in the internal array
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
68 classes. This option is primarily used for debugging Octave. Building
8325
b93ac0586e4b spelling corrections
Brian Gough<bjg@network-theory.co.uk>
parents: 7144
diff changeset
69 Octave with this option has a negative impact on performance and is not
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
70 recommended for general use.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
71
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
72 @item --enable-64
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
73 This is an @strong{experimental} option to enable Octave to use 64-bit
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
74 integers for array dimensions and indexing on 64-bit platforms. You
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
75 probably don't want to use this option unless you know what you are
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
76 doing. @xref{Compiling Octave with 64-bit Indexing}, for more details
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
77 about building Octave with this option.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
78
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
79 @item --enable-shared
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
80 Create shared libraries (this is the default). If you are planning to
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
81 use the dynamic loading features, you will probably want to use this
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
82 option. It will make your @file{.oct} files much smaller and on some
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
83 systems it may be necessary to build shared libraries in order to use
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
84 dynamically linked functions.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
85
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
86 You may also want to build a shared version of @code{libstdc++}, if your
7081
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
87 system doesn't already have one.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
88
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
89 @item --enable-dl
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
90 Use @code{dlopen} and friends to make Octave capable of dynamically
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
91 linking externally compiled functions (this is the default if
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
92 @option{--enable-shared} is specified). This option only works on systems
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
93 that actually have these functions. If you plan on using this feature, you
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
94 should probably also use @option{--enable-shared} to reduce the size of
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
95 your @file{.oct} files.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
96
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
97 @item --without-blas
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
98 Compile and use the generic @sc{blas} and @sc{lapack} versions included with
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
99 Octave. By default, configure first looks for @sc{blas} and @sc{lapack} matrix
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
100 libraries on your system, including optimized @sc{blas} implementations such
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
101 as the free ATLAS 3.0, as well as vendor-tuned libraries. (The use of
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
102 an optimized @sc{blas} will generally result in several-times faster matrix
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
103 operations.) Only use this option if your system has @sc{blas}/@sc{lapack}
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
104 libraries that cause problems for some reason. You can also use
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
105 @option{--with-blas=lib} to specify a particular @sc{blas} library
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
106 that configure doesn't check for automatically.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
107
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
108 @item --without-ccolamd
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
109 Don't use @sc{ccolamd}, disable some sparse matrix functionality.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
110
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
111 @item --without-colamd
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
112 Don't use @sc{colamd}, disable some sparse matrix functionality.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
113
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
114 @item --without-curl
9880
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9209
diff changeset
115 Don't use the cURL, disable the ftp objects, @code{urlread} and @code{urlwrite}
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
116 functions.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
117
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
118 @item --without-cxsparse
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
119 Don't use @sc{cxsparse}, disable some sparse matrix functionality.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
120
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
121 @item --without-umfpack
10711
fbd7843974fa Periodic grammar check of documentation files to ensure common format.
Rik <octave@nomad.inbox5.com>
parents: 10599
diff changeset
122 Don't use @sc{umfpack}, disable some sparse matrix functionality.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
123
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
124 @item --without-fftw
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
125 Use the included @sc{fftpack} library instead of the @sc{fftw} library.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
126
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
127 @item --without-glpk
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
128 Don't use the @sc{glpk} library for linear programming.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
129
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
130 @item --without-hdf5
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
131 Don't use the @sc{hdf5} library for reading and writing @sc{hdf5} files.
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
132
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
133 @item --without-zlib
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
134 Don't use the zlib library, disable data file compression and support
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
135 for recent MAT file formats.
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
136
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
137 @item --without-lapack
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
138 Compile and use the generic @sc{blas} and @sc{lapack} versions included with
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
139 Octave. By default, configure first looks for @sc{blas} and @sc{lapack} matrix
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
140 libraries on your system, including optimized @sc{blas} implementations such
3690
55e59236c5e5 [project @ 2000-06-30 20:55:36 by jwe]
jwe
parents: 3464
diff changeset
141 as the free ATLAS 3.0, as well as vendor-tuned libraries. (The use of
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
142 an optimized @sc{blas} will generally result in several-times faster matrix
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
143 operations.) Only use this option if your system has @sc{blas}/@sc{lapack}
3690
55e59236c5e5 [project @ 2000-06-30 20:55:36 by jwe]
jwe
parents: 3464
diff changeset
144 libraries that cause problems for some reason. You can also use
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
145 @option{--with-blas=lib} to specify a particular @sc{blas} library
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
146 that configure doesn't check for automatically.
3690
55e59236c5e5 [project @ 2000-06-30 20:55:36 by jwe]
jwe
parents: 3464
diff changeset
147
8791
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
148 @item --without-framework-carbon
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
149 Don't use framework Carbon headers, libraries and specific source code
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
150 for compilation even if the configure test succeeds (the default value
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
151 is @option{--with-framework-carbon}). This is a platform specific configure
8791
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
152 option for Mac systems.
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
153
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
154 @item --without-framework-opengl
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
155 Don't use framework OpenGL headers, libraries and specific source code
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
156 for compilation even if the configure test succeeds. If this option is
8791
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
157 given then OpenGL headers and libraries in standard system locations are
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
158 tested (the default value is @option{--with-framework-opengl}). This is a
8791
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
159 platform specific configure option for Mac systems.
d943e26d30e2 Add documentation for configure options "--without-framework-carbon" and "--without-framework-opengl".
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8481
diff changeset
160
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
161 @item --help
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
162 Print a summary of the options recognized by the configure script.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
163 @end table
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
164
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
165 See the file @file{INSTALL} for more general information about the
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
166 command line options used by configure. That file also contains
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
167 instructions for compiling in a directory other than where the source
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
168 is located.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
169
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
170 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
171 Run make.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
172
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
173 You will need a recent version of GNU Make. Modifying Octave's
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
174 makefiles to work with other make programs is probably not worth
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
175 your time. We recommend you get and compile GNU Make instead.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
176
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
177 For plotting, you will need to have gnuplot installed on your system.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
178 Gnuplot is a command-driven interactive function plotting program.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
179 Gnuplot is copyrighted, but freely distributable. The `gnu' in gnuplot
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
180 is a coincidence---it is not related to the GNU project or the FSF in
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
181 any but the most peripheral sense.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
182
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
183 To compile Octave, you will need a recent version of GNU Make. You will
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
184 also need a recent version of @code{g++} or other ANSI C++ compiler. You
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
185 will also need a Fortran 77 compiler or @code{f2c}. If you use
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
186 @code{f2c}, you will need a script like @code{fort77} that works like a
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
187 normal Fortran compiler by combining @code{f2c} with your C compiler in
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
188 a single script.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
189
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
190 If you plan to modify the parser you will also need GNU @code{bison} and
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
191 @code{flex}. If you modify the documentation, you will need GNU
11291
5abe6815aa5e install.txi: delete obsolete statement about needing a patch for makeinfo
John W. Eaton <jwe@octave.org>
parents: 10846
diff changeset
192 Texinfo.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
193
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
194 GNU Make, @code{gcc}, and @code{libstdc++}, @code{gnuplot},
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
195 @code{bison}, @code{flex}, and Texinfo are all available from many
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
196 anonymous ftp archives. The primary site is @url{ftp.gnu.org}, but it
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
197 is often very busy. A list of sites that mirror the software on
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
198 @url{ftp.gnu.org} is available by anonymous ftp from
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
199 @url{ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTP}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
200
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
201 You will need about 1 gigabyte of disk storage to work with when
7091
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
202 building Octave from source (considerably less if you don't compile with
5608935ff522 [project @ 2007-10-31 21:26:39 by jwe]
jwe
parents: 7081
diff changeset
203 debugging symbols). To do that, use the command
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
204
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
205 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
206 make CFLAGS=-O CXXFLAGS=-O LDFLAGS=
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
207 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
208
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
209 @noindent
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
210 instead of just @command{make}.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
211
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
212 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
213 If you encounter errors while compiling Octave, first check the list of
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
214 known problems below to see if there is a workaround or solution for
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
215 your problem. If not,
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
216 @ifclear INSTALLONLY
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
217 see @ref{Trouble},
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
218 @end ifclear
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
219 @ifset INSTALLONLY
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
220 see the file BUGS
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
221 @end ifset
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
222 for information about how to report bugs.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
223
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
224 @item
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
225 Once you have successfully compiled Octave, run @code{make install}.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
226
8481
00df69d7e698 [docs] capitalize Octave consistently
Brian Gough <bjg@gnu.org>
parents: 8325
diff changeset
227 This will install a copy of Octave, its libraries, and its documentation
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
228 in the destination directory. As distributed, Octave is installed in
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
229 the following directories. In the table below, @var{prefix} defaults to
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
230 @file{/usr/local}, @var{version} stands for the current version number
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
231 of the interpreter, and @var{arch} is the type of computer on which
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
232 Octave is installed (for example, @samp{i586-unknown-gnu}).
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
233
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
234 @table @file
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
235 @item @var{prefix}/bin
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
236 Octave and other binaries that people will want to run directly.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
237
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
238 @item @var{prefix}/lib
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
239 Libraries like libcruft.a and liboctave.a.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
240
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
241 @item @var{prefix}/share
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
242 Architecture-independent data files.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
243
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
244 @item @var{prefix}/include/octave
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
245 Include files distributed with Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
246
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
247 @item @var{prefix}/man/man1
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
248 Unix-style man pages describing Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
249
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
250 @item @var{prefix}/info
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
251 Info files describing Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
252
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
253 @item @var{prefix}/share/octave/@var{version}/m
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
254 Function files distributed with Octave. This includes the Octave
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
255 version, so that multiple versions of Octave may be installed at the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
256 same time.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
257
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
258 @item @var{prefix}/lib/octave/@var{version}/exec/@var{arch}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
259 Executables to be run by Octave rather than the user.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
260
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
261 @item @var{prefix}/lib/octave/@var{version}/oct/@var{arch}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
262 Object files that will be dynamically loaded.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
263
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
264 @item @var{prefix}/share/octave/@var{version}/imagelib
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
265 Image files that are distributed with Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
266 @end table
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
267 @end itemize
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
268
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
269 @menu
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
270 * Compiling Octave with 64-bit Indexing::
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
271 * Installation Problems::
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
272 @end menu
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
273
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
274 @node Compiling Octave with 64-bit Indexing
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
275 @appendixsec Compiling Octave with 64-bit Indexing
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
276
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
277 Note: the following only applies to systems that have 64-bit
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
278 pointers. Configuring Octave with @option{--enable-64} cannot magically
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
279 make a 32-bit system have a 64-bit address space.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
280
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
281 On 64-bit systems, Octave is limited to (approximately) the following
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
282 array sizes when using the default 32-bit indexing mode:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
283
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
284 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
285 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
286 double: 16GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
287 single: 8GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
288 uint64, int64: 16GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
289 uint32, int32: 8GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
290 uint16, int16: 4GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
291 uint8, int8: 2GB
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
292 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
293 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
294
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
295 In each case, the limit is really (approximately) @math{2^31} elements
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
296 because of the default type of the value used for indexing arrays
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
297 (signed 32-bit integer, corresponding to the size of a Fortran INTEGER
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
298 value).
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
299
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
300 Trying to create larger arrays will produce the following error:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
301
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
302 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
303 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
304 octave:1> a = zeros (1024*1024*1024*3, 1, 'int8');
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
305 error: memory exhausted or requested size too large
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
306 for range of Octave's index type --
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
307 trying to return to prompt
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
308 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
309 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
310
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
311 @noindent
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
312 You will obtain this error even if your system has enough memory to
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
313 create this array (4 GB in the above case).
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
314
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
315 To use arrays larger than 2 GB, Octave has to be configured with the
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
316 option @option{--enable-64}. This option is experimental and you are (as
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
317 always) encouraged to submit bug reports if you find a problem. With
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
318 this option, Octave will use 64-bit integers internally for array
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
319 dimensions and indexing. However, all numerical libraries used by
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
320 Octave will also need to use 64-bit integers for array dimensions and
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
321 indexing. In most cases, this means they will need to be compiled
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
322 from source since most (all?) distributions which package these
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
323 libraries compile them with the default Fortran integer size, which is
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
324 normally 32-bits wide.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
325
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
326 The following instructions were tested with the development version of
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
327 Octave and GCC 4.3.4 on an x86_64 Debian system.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
328
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
329 The versions listed below are the versions used for testing. If newer
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
330 versions of these packages are available, you should try to use them,
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
331 though there may be some differences.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
332
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
333 All libraries and header files will be installed in subdirectories of
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
334 @code{$prefix64} (you must choose the location of this directory).
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
335
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
336 @itemize @bullet
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
337 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
338 @sc{blas} and @sc{lapack} (@url{http://www.netlib.org/lapack})
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
339
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
340 Reference versions for both libraries are included in the reference
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
341 @sc{lapack} 3.2.1 distribution from @url{netlib.org}.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
342
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
343 @itemize @minus
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
344 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
345 Copy the file @file{make.inc.example} and name it @file{make.inc}.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
346 The options @option{-fdefault-integer-8} and @option{-fPIC} (on 64-bit
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
347 CPU) have to be added to the variable @code{OPTS} and @code{NOOPT}.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
348
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
349 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
350 Once you have compiled this library make sure that you use it for
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
351 compiling Suite Sparse and Octave. In the following we assume that
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
352 you installed the @sc{lapack} library as $prefix64/lib/liblapack.a.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
353 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
354
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
355 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
356 @sc{arpack} (@url{http://www.caam.rice.edu/software/ARPACK})
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
357
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
358 @itemize @minus
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
359 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
360 In @file{ARmake.inc} set the following variables:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
361
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
362 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
363 @group
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
364 home=path to directory @sc{arpack}
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
365 FC=gfortran
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
366 FFLAGS=-fPIC -fdefault-integer-8
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
367 MAKE=/usr/bin/make
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
368 ARPACKLIB=$(home)/libarpack.a
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
369 DIRS=$(UTILdir) $(SRCdir)
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
370 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
371 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
372
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
373 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
374 Edit the file @file{UTIL/second.f} and change the line
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
375
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
376 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
377 EXTERNAL ETIME
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
378 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
379
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
380 @noindent
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
381 to
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
382
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
383 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
384 INTRINSIC ETIME
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
385 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
386
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
387 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
388 After building the @file{.a} library, you can make a shared version with
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
389
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
390 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
391 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
392 mkdir tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
393 cd tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
394 ar x ../libarpack.a
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
395 gcc -shared -o ../libarpack.so *.o -L$prefix64/lib \
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
396 -llapack -lblas
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
397 cd ..
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
398 rm -rf tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
399 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
400 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
401
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
402 @noindent
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
403 Copy the library @file{libarpack.so} to @file{$prefix64/lib/libarpack.a}.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
404 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
405
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
406 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
407 QRUPDATE (@url{http://sourceforge.net/projects/qrupdate})
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
408
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
409 In the @file{Makeconf} file:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
410
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
411 @itemize @minus
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
412 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
413 Add @option{-fdefault-integer-8} to @env{FFLAGS}.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
414
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
415 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
416 Adjust the @sc{blas} and @sc{lapack} variables as needed if your 64-bit aware
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
417 @sc{blas} and @sc{lapack} libraries are in a non-standard location.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
418
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
419 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
420 Set @env{PREFIX} to the top-level directory of your install tree.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
421
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
422 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
423 Run @code{make solib} to make a shared library.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
424
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
425 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
426 Run @code{make install} to install the library.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
427 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
428
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
429 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
430 SuiteSparse (@url{http://www.cise.ufl.edu/research/sparse/SuiteSparse})
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
431
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
432 @itemize @minus
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
433 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
434 In @file{UFconfig/UFconfig.mk} use the following options for
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
435 @env{CFLAGS} and @env{F77FLAGS}:
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
436
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
437 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
438 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
439 CC = gcc
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
440 CFLAGS = -fPIC -O -DLP64 -DLONGBLAS='long int' -DLONG='long int'
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
441 F77 = gfortran
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
442 F77FLAGS = -fPIC -O -fdefault-integer-8
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
443 BLAS = -L$BLAS/lib -lblas -lgfortran"
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
444 LAPACK = -L$LAPACK/lib -llapack"
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
445 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
446 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
447
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
448 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
449 Disable the GPL-incompatible @code{METIS} library:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
450
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
451 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
452 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
453 CHOLMOD_CONFIG = -DNPARTITION
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
454 SPQR_CONFIG = -DNPARTITION
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
455 METIS_PATH =
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
456 METIS =
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
457 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
458 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
459
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
460 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
461 Disable the @code{DI} versions of the @code{CHOLMOD} library files by setting
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
462
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
463 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
464 OBJ = $(DL)
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
465 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
466
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
467 @noindent
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
468 in @file{CHOLMOD/Lib/Makefile}.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
469
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
470 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
471 Disable the @code{DI} versions of the @code{CHOLMOD} tests by commenting
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
472 out or deleting the following lines in @file{CHOLMOD/Demo/Makefile}:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
473
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
474 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
475 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
476 ./cholmod_demo < Matrix/bcsstk01.tri
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
477 ./cholmod_demo < Matrix/lp_afiro.tri
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
478 ./cholmod_demo < Matrix/can___24.mtx
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
479 ./cholmod_demo < Matrix/c.tri
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
480 ./cholmod_simple < Matrix/c.tri
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
481 ./cholmod_simple < Matrix/can___24.mtx
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
482 ./cholmod_simple < Matrix/bcsstk01.tri
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
483 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
484 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
485
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
486 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
487 Run @command{make} to build the libraries.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
488
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
489 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
490 The SuiteSparse @file{Makefile} does not have an install target so
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
491 you must install the files by hand:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
492
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
493 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
494 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
495 mkdir $prefix64/include/suitesparse
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
496 cp UFconfig/UFconfig.h $prefix64/include/suitesparse
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
497 for d in AMD BTF CAMD CCOLAMD \
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
498 CHOLMOD COLAMD CXSparse UMFPACK; do
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
499 cp $d/Lib/lib*a $prefix64/lib
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
500 cp $d/Include/*h $prefix64/include/suitesparse
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
501 done
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
502 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
503 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
504
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
505 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
506 You can generate shared versions of these libraries by doing the
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
507 following in the @file{$prefix64/lib} directory:
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
508
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
509 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
510 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
511 top=$(pwd)
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
512 for f in *.a; do
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
513 mkdir tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
514 cd tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
515 ar vx ../$f
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
516 gcc -shared -o ../$@{f%%.a@}.so *.o
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
517 cd $top
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
518 rm -rf tmp
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
519 done
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
520 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
521 @end example
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
522
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
523 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
524
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
525 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
526 ATLAS instead of reference @sc{blas} and @sc{lapack}
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
527
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
528 Suggestions on how to compile ATLAS, will be most welcome.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
529
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
530 @item
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
531 @sc{glpk}
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
532
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
533 Suggestions on how to compile @sc{glpk} will be most welcome.
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
534
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
535 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
536 QHULL (@url{http://www.qhull.org})
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
537
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
538 Suggestions on how to compile QHULL will be most welcome.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
539
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
540 @item Octave
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
541 Octave's 64-bit index support is activated with the configure option
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
542 @option{--enable-64}.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
543
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
544 @example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
545 @group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
546 ./configure \
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
547 LD_LIBRARY_PATH="$prefix64/lib" \
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
548 CPPFLAGS="-I$prefix64/include" LDFLAGS="-L$prefix64/lib" \
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
549 --enable-64
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
550 @end group
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
551 @end example
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
552
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
553 You must ensure that all Fortran sources except those in the
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
554 @file{libcruft/ranlib} directory are compiled such that INTEGERS are
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
555 8-bytes wide. If you are using gfortan, the configure script should
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
556 automatically set the Makefile variable @code{F77_INTEGER_8_FLAG} to
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
557 @option{-fdefault-integer-8}. If you are using another compiler, you
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
558 must set this variable yourself. You should NOT set this flag in
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
559 @env{FFLAGS}, otherwise the files in @file{libcruft/ranlib} will be
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
560 miscompiled.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
561
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
562 @item
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
563 Other dependencies
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
564
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
565 Probably nothing special needs to be done for the following
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
566 dependencies. If you discover that something does need to be done,
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
567 please submit a bug report.
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
568
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
569 @itemize @minus
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
570 @item pcre or regex
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
571
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
572 @item zlib
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
573
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
574 @item hdf5
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
575
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
576 @item fftw3
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
577
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
578 @item cURL
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
579
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
580 @item GraphicsMagick++
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
581
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
582 @item OpenGL
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
583
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
584 @item freetype
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
585
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
586 @item fontconfig
11573
6f8ffe2c6f76 Grammarcheck txi files for 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
587
11302
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
588 @item fltk
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
589 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
590
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
591 @end itemize
e971caa4c2bb doc/interpreter/install.txi: explain how to compile Octave with 64-bit indexing
John W. Eaton <jwe@octave.org>
parents: 11291
diff changeset
592
4167
aae05d51353c [project @ 2002-11-12 02:52:50 by jwe]
jwe
parents: 3960
diff changeset
593 @node Installation Problems
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
594 @appendixsec Installation Problems
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
595
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
596 This section contains a list of problems (and some apparent problems
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
597 that don't really mean anything is wrong) that may show up during
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
598 installation of Octave.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
599
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
600 @itemize @bullet
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
601 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
602 On some SCO systems, @code{info} fails to compile if
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
603 @w{@code{HAVE_TERMIOS_H}} is defined in @file{config.h}. Simply removing
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
604 the definition from @file{info/config.h} should allow it to compile.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
605
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
606 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
607 If @code{configure} finds @code{dlopen}, @code{dlsym}, @code{dlclose},
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
608 and @code{dlerror}, but not the header file @file{dlfcn.h}, you need to
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
609 find the source for the header file and install it in the directory
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
610 @file{usr/include}. This is reportedly a problem with Slackware 3.1.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
611 For Linux/GNU systems, the source for @file{dlfcn.h} is in the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
612 @code{ldso} package.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
613
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
614 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
615 Building @file{.oct} files doesn't work.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
616
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
617 You should probably have a shared version of @code{libstdc++}. A patch
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
618 is needed to build shared versions of version 2.7.2 of @code{libstdc++}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
619 on the HP-PA architecture. You can find the patch at
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
620 @url{ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
621
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
622 @item
3464
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
623 On some alpha systems there may be a problem with the @code{libdxml}
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
624 library, resulting in floating point errors and/or segmentation faults in
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
625 the linear algebra routines called by Octave. If you encounter such
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
626 problems, then you should modify the configure script so that
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
627 @w{@code{SPECIAL_MATH_LIB}} is not set to @code{-ldxml}.
3464
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
628
ab5ae0aca0f1 [project @ 2000-01-20 09:48:41 by jwe]
jwe
parents: 3294
diff changeset
629 @item
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
630 On FreeBSD systems Octave may hang while initializing some internal
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
631 constants. The fix appears to be to use
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
632
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
633 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
634 options GPL_MATH_EMULATE
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
635 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
636
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
637 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
638 rather than
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
639
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
640 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
641 options MATH_EMULATE
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
642 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
643
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
644 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
645 in the kernel configuration files (typically found in the directory
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
646 @file{/sys/i386/conf}. After making this change, you'll need to rebuild
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
647 the kernel, install it, and reboot.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
648
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
649 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
650 If you encounter errors like
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
651
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
652 @example
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
653 @group
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
654 passing `void (*)()' as argument 2 of
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
655 `octave_set_signal_handler(int, void (*)(int))'
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
656 @end group
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
657 @end example
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
658
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
659 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
660 or
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
661
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
662 @example
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
663 @group
7081
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
664 warning: ANSI C++ prohibits conversion from `(int)'
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
665 to `(@dots{})'
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
666 @end group
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
667 @end example
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
668
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
669 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
670 while compiling @file{sighandlers.cc}, you may need to edit some files
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
671 in the @code{gcc} include subdirectory to add proper prototypes for functions
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
672 there. For example, Ultrix 4.2 needs proper declarations for the
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
673 @code{signal} function and the @w{@code{SIG_IGN}} macro in the file
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
674 @file{signal.h}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
675
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
676 On some systems the @w{@code{SIG_IGN}} macro is defined to be something like
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
677 this:
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
678
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
679 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
680 #define SIG_IGN (void (*)())1
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
681 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
682
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
683 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
684 when it should really be something like:
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
685
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
686 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
687 #define SIG_IGN (void (*)(int))1
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
688 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
689
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
690 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
691 to match the prototype declaration for the @code{signal} function. This
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
692 change should also be made for the @w{@code{SIG_DFL}} and @w{@code{SIG_ERR}}
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
693 symbols. It may be necessary to change the definitions in
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
694 @file{sys/signal.h} as well.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
695
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
696 The @code{gcc} @code{fixincludes} and @code{fixproto} scripts should
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
697 probably fix these problems when @code{gcc} installs its modified set of
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
698 header files, but I don't think that's been done yet.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
699
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
700 @strong{You should not change the files in @file{/usr/include}}. You
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
701 can find the @code{gcc} include directory tree by running the command
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
702
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
703 @example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
704 gcc -print-libgcc-file-name
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
705 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
706
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
707 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
708 The directory of @code{gcc} include files normally begins in the same directory
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
709 that contains the file @file{libgcc.a}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
710
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
711 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
712 Some of the Fortran subroutines may fail to compile with older versions
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
713 of the Sun Fortran compiler. If you get errors like
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
714
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
715 @example
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
716 @group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
717 zgemm.f:
10599
d0e0bb2ebebb Remove tabs in .txi files causing problems with pdf formatting.
Rik <octave@nomad.inbox5.com>
parents: 9895
diff changeset
718 zgemm:
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
719 warning: unexpected parent of complex expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
720 zgemm.f, line 245: warning: unexpected parent of complex
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
721 expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
722 warning: unexpected parent of complex expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
723 zgemm.f, line 304: warning: unexpected parent of complex
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
724 expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
725 warning: unexpected parent of complex expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
726 zgemm.f, line 327: warning: unexpected parent of complex
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
727 expression subtree
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
728 pcc_binval: missing IR_CONV in complex op
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
729 make[2]: *** [zgemm.o] Error 1
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
730 @end group
6670
14992092ab06 [project @ 2007-05-29 17:51:37 by jwe]
jwe
parents: 5196
diff changeset
731 @end example
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
732
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
733 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
734 when compiling the Fortran subroutines in the @file{libcruft}
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
735 subdirectory, you should either upgrade your compiler or try compiling
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
736 with optimization turned off.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
737
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
738 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
739 On NeXT systems, if you get errors like this:
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
740
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
741 @example
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
742 @group
7081
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
743 /usr/tmp/cc007458.s:unknown:Undefined local
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
744 symbol LBB7656
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
745 /usr/tmp/cc007458.s:unknown:Undefined local
503001863427 [project @ 2007-10-31 01:08:14 by jwe]
jwe
parents: 7018
diff changeset
746 symbol LBE7656
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
747 @end group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
748 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
749
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
750 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
751 when compiling @file{Array.cc} and @file{Matrix.cc}, try recompiling
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
752 these files without @option{-g}.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
753
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
754 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
755 Some people have reported that calls to shell_cmd and the pager do not
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
756 work on SunOS systems. This is apparently due to having
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
757 @w{@code{G_HAVE_SYS_WAIT}} defined to be 0 instead of 1 when compiling
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
758 @code{libg++}.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
759
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
760 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
761 On NeXT systems, linking to @file{libsys_s.a} may fail to resolve the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
762 following functions
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
763
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
764 @example
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
765 @group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
766 _tcgetattr
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
767 _tcsetattr
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
768 _tcflow
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
769 @end group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
770 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
771
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
772 @noindent
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
773 which are part of @file{libposix.a}. Unfortunately, linking Octave with
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
774 @option{-posix} results in the following undefined symbols.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
775
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
776 @example
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
777 @group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
778 .destructors_used
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
779 .constructors_used
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
780 _objc_msgSend
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
781 _NXGetDefaultValue
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
782 _NXRegisterDefaults
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
783 .objc_class_name_NXStringTable
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
784 .objc_class_name_NXBundle
9081
c79cf77061b7 Cleanup documentation files contrib.texi, bugs.texi, install.texi, emacs.texi
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
785 @end group
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
786 @end example
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
787
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
788 One kluge around this problem is to extract @file{termios.o} from
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
789 @file{libposix.a}, put it in Octave's @file{src} directory, and add it
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
790 to the list of files to link together in the makefile. Suggestions for
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
791 better ways to solve this problem are welcome!
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
792
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
793 @item
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
794 If Octave crashes immediately with a floating point exception, it is
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
795 likely that it is failing to initialize the IEEE floating point values
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
796 for infinity and NaN.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
797
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
798 If your system actually does support IEEE arithmetic, you should be able
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
799 to fix this problem by modifying the function @code{octave_ieee_init} in
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
800 the file @file{lo-ieee.cc} to correctly initialize Octave's internal
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
801 infinity and NaN variables.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
802
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
803 If your system does not support IEEE arithmetic but Octave's configure
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
804 script incorrectly determined that it does, you can work around the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
805 problem by editing the file @file{config.h} to not define
9209
923c7cb7f13f Simplify TeXinfo files by eliminating redundant @iftex followed by @tex construction.
Rik <rdrider0-list@yahoo.com>
parents: 9081
diff changeset
806 @w{@code{HAVE_ISINF}}, @w{@code{HAVE_FINITE}}, and @w{@code{HAVE_ISNAN}}.
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
807
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
808 In any case, please report this as a bug since it might be possible to
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
809 modify Octave's configuration script to automatically determine the
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
810 proper thing to do.
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
811
7144
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
812 @item
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
813 If Octave is unable to find a header file because it is installed in a
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
814 location that is not normally searched by the compiler, you can add the
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
815 directory to the include search path by specifying (for example)
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
816 @code{CPPFLAGS=-I/some/nonstandard/directory} as an argument to
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
817 @code{configure}. Other variables that can be specified this way are
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
818 @env{CFLAGS}, @env{CXXFLAGS}, @env{FFLAGS}, and @env{LDFLAGS}.
7144
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
819 Passing them as options to the configure script also records them in the
10828
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
820 @file{config.status} file. By default, @env{CPPFLAGS} and
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
821 @env{LDFLAGS} are empty, @env{CFLAGS} and @env{CXXFLAGS} are set to
322f43e0e170 Grammarcheck .txi documentation files.
Rik <octave@nomad.inbox5.com>
parents: 10711
diff changeset
822 @code{"-g -O"} and @env{FFLAGS} is set to @code{"-O"}.
7144
30c0533e39ae [project @ 2007-11-09 17:37:24 by jwe]
jwe
parents: 7091
diff changeset
823
3294
bfe1573bd2ae [project @ 1999-10-19 10:06:07 by jwe]
jwe
parents:
diff changeset
824 @end itemize