[daip] building 4MASS software

Eric Greisen egreisen at nrao.edu
Wed Apr 16 10:30:10 EDT 2008


Huib Intema wrote:
> Dear Eric
> 
> Although uncertain whether this will work, I'm trying to build Bill 
> Cotton's
> 4MASS software against a recent 31DEC08 installation. The latter is a 
> binary installation, but it does includes all the SUBLIB libraries, so I 
> figure it might work. I'm using the Intel compiler ifort for Linux,
> the same that you used for building the AIPS binaries (at least, as far
> as I can tell). Now with some adjustments (mainly setting environment
> variables and some adjustments for the AP size) I got past the compilation
> stage and am now stuck at the linker stage. The output from the last gmake
> call from the 4MASS directory is attached.

Bill asserts that I broke his code with the 31DEC03 release and has not 
fixed it.  I am now working in the heart of the imaging and will 
probably make more troubles.  Bill and others (JIVE, GMRT) seem to think 
that AIPS is unchanging and so they depend on it without involving me. 
That is not a good idea and I will not be responsible.
> 
> The undefined reference errors are all coming from the AIPS SUBLIB 
> libraries
> rather than 4MASS modules. It seems to me that either the linker is 
> unable to resolve the references between libraries (wrong linker 
> version?) or that some other library is missing (I also tried including 
> all available SUBLIB files that were present in the AIPS directory, but 
> this generated even more undefined reference errors).
> 
> I've contacted Bill about this as well, but still waiting for an answer.
> Any help would be much appreciated.

> /disks/cosmos11/intema/software/AIPS/31DEC08/LINUX/LIBR/APLNOT/SUBLIB(CHNDAT.o): In function `chndat_.J':
> /home/AIPS/31DEC08/LINUX/PREP/CHNDAT.f:(.text+0x8c): undefined reference to `axefnd_'
> /home/AIPS/31DEC08/LINUX/PREP/CHNDAT.f:(.text+0x2b9): undefined reference to `axefnd_'
> /disks/cosmos11/intema/software/AIPS/31DEC08/LINUX/LIBR/APLNOT/SUBLIB(CHNDAT.o): In function `chndat_.A':
> /home/AIPS/31DEC08/LINUX/PREP/CHNDAT.f:(.text+0x79a): undefined reference to `axefnd_'
> /home/AIPS/31DEC08/LINUX/PREP/CHNDAT.f:(.text+0x9b3): undefined reference to `axefnd_'
> /disks/cosmos11/intema/software/AIPS/31DEC08/LINUX/LIBR/APLNOT/SUBLIB(GETDEL.o): In function `getdel_.J':
> /home/AIPS/31DEC08/LINUX/PREP/GETDEL.f:(.text+0x5df): undefined reference to `todhms_'
> /home/AIPS/31DEC08/LINUX/PREP/GETDEL.f:(.text+0x7b4): undefined reference to `todhms_'
> /disks/cosmos11/intema/software/AIPS/31DEC08/LINUX/LIBR/APLNOT/SUBLIB(GETDEL.o): In function `getdel_.A':

You need to make link files to point at the libraries under a new name 
and change your make file so that the second occurrence of APLSUB and 
APLLINUX are instead the new names.  Intel insists on dropping any 
"duplicates" in the link list even though it does not recurse in its 
search.  Our version is one of the few that does not have this bug.

cd $LIBR
ln -s APLSUB APLJUNK
ln -s APLLINUX LINJUNK

then edit the make to change the 2nd ref to APLSUB/SUBLIB to 
APLJUNK/SUBLIB and 2nd ref of APLLINUX/SUBLIB to LINJUNK/SUBLIB.  The 
$SYSLOCAL file LIBR.DAT is the aips-standard place to change this as well.

Eric Greisen




More information about the Daip mailing list