[ncl-install] NCL 5.1.0 / sed problem on IA64 cluster

Mark Van Moer mvanmoer at ncsa.illinois.edu
Thu Jun 4 15:11:35 MDT 2009


Hi Dave,
I think you found it.

$ grep CTOFLIBS Makefile
CTOFLIBS        = -lm -lifcore -lifport -lstdc++
        @sed    -e 's+SED_CC+$(CC)+'    -e 's+SED_LIBSEARCH+$(LIBSEARCH)+'      -e 's+SED_STDDEF+$(STD_DEFINES)+'   -e 's+SED_PROJDEF+$(PROJECTDEFINES)+'   -e 's+SED_LDCFLAGS+$(CC_LDOPTIONS)+'        -e 's+SED_SYSTEM_INCLUDE+$(SYSTEM_INCLUDE)+'    -e 's+SED_XLIB+$(XLIB)+'    -e 's+SED_PNGLIB+$(PNGLIB)+'    -e 's+SED_CTOFLIBS+$(CTOFLIBS)+'    -e 's+SED_LIBDIR+$(LIBDIR)+'    -e 's+SED_INCDIR+$(INCDIR)+'    -e 's+SED_NCARGDIR+$(NCARGDIR)+'    -e 's+SED_ROBJDIR+$(ROBJDIR)+'  <ncargcc.csh >ncargcc


I had added -lstdc++ to CtoFLibraries in $NCARG/config/LINUX because previously I'd been getting errors like:

/usr/projects/compilers/intel/8.1.037/lib/libifcore.so.6: undefined reference to `__cxa_end_catch'
/usr/projects/compilers/intel/8.1.037/lib/libifcore.so.6: undefined reference to `std::terminate()'
/usr/projects/compilers/intel/8.1.037/lib/libifcore.so.6: undefined reference to `__cxa_begin_catch

sed must be interpreting those plus signs on stdc++ as delimiters.

Is there a better way to fix the original errors?
Thanks,
Mark 

----- Original Message -----
From: "David Brown" <dbrown at ucar.edu>
To: "Mark Van Moer" <mvanmoer at ncsa.illinois.edu>
Cc: "ncl-install" <ncl-install at ucar.edu>
Sent: Thursday, June 4, 2009 3:56:53 PM GMT -06:00 US/Canada Central
Subject: Re: [ncl-install] NCL 5.1.0 / sed problem on IA64 cluster

Hi Mark,

If you look at the Makefile in each of the directories that give the  
error you will see that sed is run with multiple '-e' arguments for  
each of the commands it is trying to build.
I am guessing that the 'expression #x' part of the error message is  
referring to the particular '-e' argument that results in the error.  
Following this hypothesis the failing commands are:
-e 's+SED_CTOFLIBS+$(CTOFLIBS)+'    # for ncargcc
-e 's+SED_EXTRA_LDLIBS+$(EXTRA_LDLIBS)+'   # for MakeNcl
-e 's+SED_CTOFLIBS+$(CTOFLIBS)+'     # for nhlf77

Not all the same, but looking a little further in the ncl directory,  
you can see if you trace back the EXTRA_LDLIBS also includes  
CTOFLIBS. Therefore my guess is that there is something that your  
version of sed does not like about the way your CTOFLIBS is defined.

So can you look in any of these Makefiles and see what the definition  
of CTOFLIBS is?
  -dave


On Jun 4, 2009, at 2:00 PM, Mark Van Moer wrote:

> Hello, I'm attempting to build NCL 5.1.0 on an IA64 cluster. The  
> build has three sed errors:
>
> make[5]: Entering directory `/usr/projects/vis/ncl/ncl_ncarg-5.1.0/ 
> ncarg2d/src/binscripts'
> sed: -e expression #9, char 45: unknown option to `s'
> make[5]: *** [ncargcc] Error 1
>
> Similar errors appear 2 other times later in the build:
>
> sed: -e expression #4, char 62: unknown option to `s'
> make[4]: *** [MakeNcl] Error 1
> make[4]: Leaving directory `/usr/projects/vis/ncl/ncl_ncarg-5.1.0/ 
> ni/src/ncl'
>
> sed: -e expression #5, char 45: unknown option to `s'
> make[4]: *** [nhlf77] Error 1
> make[4]: Leaving directory `/usr/projects/vis/ncl/ncl_ncarg-5.1.0/ 
> ni/src/scripts'
>
>
> Is sed not liking how a makefile macro is being expanded? Anyone  
> know what I should approach troubleshooting this? Searching seems  
> to indicate a possible problem with delimiters. Is it possible a  
> macro is expanding that contains the delimiter?
>
> Thanks for any help,
> Mark
>
> -- 
> Mark Van Moer
> Visualization Programmer
> Advanced Applications Support
> NCSA, University of Illinois
> mvanmoer at ncsa.illinois.edu
>
> _______________________________________________
> ncl-install mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-install


-- 
Mark Van Moer
Visualization Programmer
Advanced Applications Support
NCSA, University of Illinois
mvanmoer at ncsa.illinois.edu



More information about the ncl-install mailing list