[daip] New Staff Reply - [!YFR-996950]: AIPS compilation error when increasing channel limit

Eric Greisen do-not-reply at nrao.edu
Wed Jun 1 11:29:42 EDT 2011


New Staff Reply: AIPS compilation error when increasing channel limit

I am most mystified by this.  We have yet to explore this space
although each year we do up the MAXCIF by a factor of 2 so we are
only 6 months away.  Looking over the code, I see arrays of 3 or 4
times MAXCIF and that is all.  Even in double, this is only 4 Mbytes
and we do not have all that many of them.  Note that include $INC
ZPBUFSZ will need to be increased also to do what you want.

Only a few AIPS tasks are over 100 Mbytes in size - even if this
parameter doubled that, we are no where near the 2 Gbyte limit and
the biggest several of these are image tasks not UV.

AIPS was begun in 1979 by scientists who were not expert programmers
(at first) and with oversight committees that insisted that it should
work on PDP computers of that day (16 bit byte addressing - we never
did work on them).  Most of the programmers did not understand that
a variable could lose its value between calls to a routine so we had
to force compilers to make all variables static.  If you take that off,
most tasks will not work and it is beyond most of us to fix that at
this late date.

But perhaps there is an entirely different cause for this error.
ZDACLS.c:(.text+0x1f): relocation truncated to fit: R_X86_64_PC32 against symbol `Z_fcbfd' defined in COMMON section in /cluster/ajp
s/cvs/31DEC11/LNX64/LIBR/APLSUB/SUBLIB(ZDCHIC.o)
ZDACLS.c:(.text+0x3d): relocation truncated to fit: R_X86_64_PC32 against symbol `Z_fcberr' defined in COMMON section in /cluster/aj

point at single int variables used as C common variables defined in ZDCHIC.C using

#define Z_dchic__
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/param.h>

#define UMASK S_IWOTH                   /* inhibits writes by world   */
/* #define UMASK 0 */                   /* all accesses are allowed   */

int Z_nbpwd, Z_nbpab, Z_nbpb, Z_nbitwd, Z_nbitab, Z_nbitch, Z_nchlin,
   Z_nwdpdp, Z_bytflp, Z_spfrmt, Z_dpfrmt, Z_nbps, Z_nmfcb, Z_mfcb,
   Z_fcbfd, Z_fcbreq, Z_fcberr,Z_fcbxfr, Z_fcbsiz, Z_fcbsp1, Z_fcbsp2,
   Z_fcbsp3, Z_fcbsp4, Z_nintrn, Z_nfcber, Z_nfcbfd;
unsigned int Z_maskab;
char Z_systyp[5];

ahead of the void zdchic_ (....) statement.  I think something has gone wrong with
the linker in this usage.

Eric Greisen


Ticket Details
===================
Ticket ID: YFR-996950
Department: AIPS Data Processing
Priority: Default
Status: Open
Link:  https://help.nrao.edu/staff/index.php?_m=tickets&_a=viewticket&ticketid=866




More information about the Daip mailing list