next up previous contents
Next: Some notes on installation Up: Trouble shooting Previous: Matrix class troubles   Contents

Some notes on installation on SGI

This message was posted to the doris_users email list. It may be of help if you are installing Doris on a SGI platform. Thanks to Kamini Kanta Mohanty.

 From: Kamini Kanta Mohanty <>
 Subject: My Experience on DORIS
 To: Bert Kampes <>

 | Doris Listserver                                           |
 | (Delft Object-oriented Radar Interferometric software)     |
 |                                                            |
 From: K.K. Mohanty
 Marine and Water Resources Division
 Space Applications Centre (ISRO)
 Ahmedabad - 380 053, INDIA
 	7 July, 2000
 Dear Doris Users,					
 	At the outset, I would like to thank Mr. Bert Kampes,
 DEOS, Delft University to make DORIS openly available
 for download. I have downloaded DORIS 2.3 software
 sometime in the middle of May 2000. Subsequently, I
 have installed the same in SGI (Silicon Graphics)
 Octane w/s with IRIX 6.4 o/s. I have executed many
 steps in the s/w (not all). I would like to share my
 experience of installing s/w in SGI machine.  Also,
 got some queries. May be a few suggestions, which can
 be taken care of in future release. 
 	I am new to interferometry. I am based at Space
 Application Centre (ISRO), Ahmedabad, INDIA. I am also
 an ITC, Netherlands alumni.
 Experience During Installation:
 1) complex type in SGI is a class (not template)
 supporting only double type. I had to separately bring
 in the complext.h from GNU. It works fine.
 2) Equivalents of all other includes are available,
 but .h extension has to be added (for example,
 <iostream> has to be replaced by <iostream.h>)
 3) The ios::binary mode in file open is not required
 in IRIX 6.4. I understand it's true for many unix
 variants. I simply removed it, and then it works. 
 4) In all declarations such as, template matrix<TYPE>
 operator * TYPE2 (const matrix<TYPE> &A, const
 matrix<TYPE> &B); in matlib.c the keyword template has
 to be replaced by keyword class. This is also true for
 declaration for member functions such as template
 matrix<TYPE> correlate TYPE2 (const matrix<TYPE> &A,
 const matrix<TYPE> &B);
 5) During final linking for making doris executable,
 an undefined symbol void
 matrix<complex<float>>::conj() was complained by the
 linker, even though it was being generated by
 conditional comipling for creation of matrix library
 in matrixbaseclass.overloaded. This has mostly to do
 with order of linking the libraries. I avoided this by
 specializing the corresponding function void
 matrix<TYPE>::conj() as void
 matrix<complex<float>>::conj() in
 6) I get a lot of warning stating multiply
 defined:(malloc_alloc::oom_malloc() for different
 primitive types. They can be ignored.
 7) A final error in ioroutine.c while compiling in
 debug mode for line if(compl4(1.1) != complr4 (1.1, 0)
 stating more than one != matches was reported. Since,
 it was only for debugging mode, I avoided this by
 commenting this line. This may have to do with my
 implementation of complext.h from GNU.
 Experience Running Doris
 Mohanty, KK

Leijen 2009-04-14