Here is the procedure for installing Octave from scratch on a Unix system. For instructions on how to install the binary distributions of Octave, see section Binary Distributions.
make CFLAGS=-O CXXFLAGS=-O LDFLAGS=instead of just `make'.
This section contains a list of problems (and some apparent problems that don't really mean anything is wrong) that may show up during installation of Octave.
SIG_IGNmacro in the file `signal.h'. On some systems the
SIG_IGNmacro is defined to be something like this:
#define SIG_IGN (void (*)())1when it should really be something like:
#define SIG_IGN (void (*)(int))1to match the prototype declaration for
signal(). The gcc fixincludes/fixproto script should probably fix this when gcc installs its modified set of header files, but I don't think that's been done yet.
Octave may soon support FSQP, an NLP solver from Andre Tits (firstname.lastname@example.org) of the University of Maryland. FSQP is available free of charge to academic sites, but can not be redistributed to third parties.
Office of Technology Licensing
857 Serra Street
Stanford CA 94305-6225
Tel: (415) 723-0651
Fax: (415) 725-7295
zgemm.f: zgemm: warning: unexpected parent of complex expression subtree zgemm.f, line 245: warning: unexpected parent of complex expression subtree warning: unexpected parent of complex expression subtree zgemm.f, line 304: warning: unexpected parent of complex expression subtree warning: unexpected parent of complex expression subtree zgemm.f, line 327: warning: unexpected parent of complex expression subtree pcc_binval: missing IR_CONV in complex op make: *** [zgemm.o] Error 1when compiling the Fortran subroutines in the `libcruft' subdirectory, you should either upgrade your compiler or try compiling with optimization turned off.
/usr/tmp/cc007458.s:unknown:Undefined local symbol LBB7656 /usr/tmp/cc007458.s:unknown:Undefined local symbol LBE7656when compiling `Array.cc' and `Matrix.cc', try recompiling these files without
G_HAVE_SYS_WAITdefined to be 0 instead of 1 when compiling libg++.
_tcgetattr _tcsetattr _tcflowwhich are part of `libposix.a'. Unfortunately, linking Octave with
-posixresults in the following undefined symbols.
.destructors_used .constructors_used _objc_msgSend _NXGetDefaultValue _NXRegisterDefaults .objc_class_name_NXStringTable .objc_class_name_NXBundleOne kludge around this problem is to extract `termios.o' from `libposix.a', put it in Octave's `src' directory, and add it to the list of files to link together in the Makefile. Suggestions for better ways to solve this problem are welcome!
as: /tmp/cc005254.s:4057: Local symbol LBB103 never defined. as: /tmp/cc005254.s:4057: Local symbol LBE103 never defined.A possible workaround for this is to compile without
octave_ieee_initin the file `sysdep.cc' to correctly initialize Octave's internal infinity and NaN variables. If your system does not support IEEE arithmetic but Octave's configure script incorrectly determined that it does, you can work around the problem by editing the file `config.h' to not define
HAVE_ISNAN. In any case, please report this as a bug since it might be possible to modify Octave's configuration script to automatically determine the proper thing to do.
This section contains instructions for creating and installing a binary distribution.
sh ./doinstall.shin the top level directory of the distribution. Binary distributions are normally compiled assuming that Octave will be installed in the following subdirectories of `/usr/local'.
sh ./doinstall.sh /some/other/directoryOctave will then be installed in subdirectories of the directory `/some/other/directory'
Here is how to build a binary distribution for others.