[ncl-install] Configure and/or ymake changing Include paths

Mary Haley haley at ucar.edu
Tue Apr 12 16:00:59 MDT 2016


Cindy,

You can change the definition of this library in the $NCARG/config/Template
file:

#define LexLibrary -ll

Once you do this, you will need to remake the Makefiles in order for the
change to take effect:

cd $NCARG
make Makefiles

We may have to change this library eventually, because we are seeing other
people with the same issue as you, oddly in the same week.

--Mary



On Tue, Apr 12, 2016 at 3:25 PM, Crooks, Cynthia J <cynthia.crooks at bp.com>
wrote:

> I think I finally have a build of ncl.  At least “ncl –V” and “ng4ex
> gsun01n” run.
>
>
>
> I will look more closely at the log file tomorrow.  One error that
> continues to pop up is “/usr/bin/ld: cannot find –ll”.  We have “flex”
> installed on this system, not lex.  Lex is not included in the OS
> distribution.  Is there a clean way to change the library to “-lfl”?  Is
> that even advisable?
>
>
>
> The error occurs in
>
>
>
> make[4]: Entering directory
> `/hpc/tstapps/src/ncl/ncl_ncarg-6.3.0/ni/src/mkwrap'
>
> gcc -ansi -fPIC -fopenmp  -O    -o wrapit77 y.tab.o lex.yy.o Symbol.o
> wrapit_main.o  -L/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/lib
> -L/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/lib   -ll
>
> /usr/bin/ld: cannot find -ll
>
> collect2: error: ld returned 1 exit status
>
> make[4]: *** [wrapit77] Error
>
>
>
> Thanks.
>
>
>
> Cindy
>
>
>
> *From:* Mary Haley [mailto:haley at ucar.edu]
> *Sent:* Tuesday, April 12, 2016 11:24 AM
> *To:* Crooks, Cynthia J
> *Cc:* ncl-install at ucar.edu
> *Subject:* Re: [ncl-install] Configure and/or ymake changing Include paths
>
>
>
> The problem is that the string "x86_64" is a system predefined macro that
> is basically a flag (0 or 1) as to whether you are on a 64-bit system. When
> the Makefile gets generated, the preprocessor is converting this to a 1
> because you are on a 64-bit system. By renaming it to "x86.64", which is
> NOT a predefined macro, then, you get around this problem.
>
>
>
> I will see if somebody can find a work-around to the other issue you
> mentioned.
>
>
>
> At least temporarily, you can choose to install NCL to whatever parent
> directory you want (that doesn't have "x86_64" in the name), and then
> simply move the "bin", "lib", and "include" directories
> to  /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0 afterwards.
>
>
>
> --Mary
>
>
>
>
>
>
>
>
>
> On Mon, Apr 11, 2016 at 1:53 PM, Crooks, Cynthia J <cynthia.crooks at bp.com>
> wrote:
>
> Mary,
>
>
>
> I have to update my last response.  Adding the “” did make a difference.
> I found I also had to add it to the
>
>
>
>                 #define YmakeRoot
> "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"
>
>
>
> Unfortunately, that creates another problem:
>
>
>
> YMAKEROOT               = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"
>
> BINROOT                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/bin
>
> LIBROOT                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/lib
>
> INCROOT                 =
> "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/include
>
> MANROOT                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/man
>
> TMPROOT                 = /tmp
>
>
>
> ROOTPATH                = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"
>
> BINPATH                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/bin
>
> LIBPATH                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/lib
>
> INCPATH                 =
> "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/include
>
> MANPATH                 = "/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0"/man
>
>
>
> LIBSEARCH               = "-L/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/lib"
>
> INCSEARCH               =
> "-I/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include -
>
> I/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include/freetype2"
>
>
>
> I also found that if I change “x86_64” to “x86.64” in Site.local, I don’t
> need the “” and the paths show up in the Make file the way I would expect.
> Unfortunately, that is now how our app file system tree has been built.
>
>
>
> I think I have found a “work around”.  I set an environment variable
> called HPCAPPDIR to “/hpc/apps/SLES/3.0/x86_64”.  I then edited the
> Site.local and replaced that portion of the various paths with
> ${HPCAPPDIR}.  It is important to use the {} notation.  It looks like most
> things have built and are being installed in the correct location.
>
>
>
> Now I need to figure out what I did wrong with my INCLUDE path.  It’s
> always something.
>
>
>
> Cindy
>
>
>
> *From:* Mary Haley [mailto:haley at ucar.edu]
> *Sent:* Sunday, April 10, 2016 1:54 PM
> *To:* Crooks, Cynthia J
> *Cc:* ncl-install at ucar.edu
> *Subject:* Re: [ncl-install] Configure and/or ymake changing Include paths
>
>
>
> Cindy,
>
>
> Try adding quotes around the -L path in your Site.local file:
>
>
>
> #define LibSearch "-L/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/lib"
>
> #define IncSearch "-I/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include
> -I/hpc/ap\
>
> ps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include/freetype2"
>
>
>
> You will need to remake the Makefiles:
>
>
>
> cd $NCARG
>
> make me
> make Makefiles includes depend all install
>
> --Mary
>
>
>
>
>
>
>
> On Fri, Apr 8, 2016 at 12:59 PM, Crooks, Cynthia J <cynthia.crooks at bp.com>
> wrote:
>
> Hello,
>
>
>
> I am trying to build ncl_ncar-6.3.0. I am building on a SLES 11 SP 3
> machine and using the gcc-5.2.0 compiler.  I am building  without the
> optional software.  Parts of the build are failing because the PATHS in the
> Makefile are incorrect.  The paths should include  “3.0/x86_64/ncl_ncarg”,
> but they are being changed to “3.0/1/ncl_ncarg”.  The Site.local appears to
> have the correct paths:
>
>
>
> #define YmakeRoot /hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0
>
>
>
> #define LibSearch -L/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/lib
>
> #define IncSearch -I/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include
> -I/hpc/apps/SLES/3.0/x86_64/ncl_ncarg/6.3.0/include/freetype2
>
>
>
> The Makefiles, however, do not.
>
>
>
> YMAKEROOT               = /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0
>
> BINROOT                 = /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0/bin
>
> LIBROOT                 = /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0/lib
>
> INCROOT                 = /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0/include
>
> MANROOT                 = /hpc/apps/SLES/3.0/1/ncl_ncarg/6.3.0/man
>
>
>
> I have attached my Site.local and the top level Makefile.
>
>
>
> I have tried rerunning Configure to verify that I put in the correct
> paths.  I get the same result.
>
>
>
> I would appreciate any help you can offer.  Let me know what other
> information you might require.
>
>
>
> Thanks.
>
>
>
> Cindy
>
>
> _______________________________________________
> ncl-install mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-install
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-install/attachments/20160412/43c7d5aa/attachment-0001.html 


More information about the ncl-install mailing list