
To build NCL using the Intel "ifort" Fortran compiler, and GNU "gcc"
compilers on an Intel Mac:
  
  1. I used "-m32" with ifort, otherwise it defaults to trying to
     compile for an x86_64 system. (I have an older Mac.)

  2. The "CToFLibraries" needs to be:

         -lifcore -lsvml -limf -lirc

  3. In order to build NCL, I had to include "-bind_at_load" on the
     "CC_LD" line, otherwise I got a bunch of errors like:

      symbol _fdim used from dynamic library
     /usr/lib/system/libmathCommon.A.dylib(single module) not from earlier
     dynamic library libimf.dylib(fdim_stub.o)

  4. In order to run fontc, graphc, ncl, etc, I had to set:

        setenv DYLD_LIBRARY_PATH /opt/intel/fc/10.1.007/lib

     This should be done for you if you do something like:

        source /opt/intel/fc/10.1.007/bin/ifortvars.csh 
  
----------------------------------------------------------------------

To build an OPeNDAP version on reader (a PPC Mac):

I started from scratch, and downloaded the latest versions of libdap
(3.7.6) and libnc-dap (3.7.0). I went ahead and built both shared and
static libraries, which seems to be the default.

I just used the system libraries for curl, xml2, and ssl.

I couldn't build NCL using the shared versions of the nc-dap,
dapclient, and dap libraries. I get the same problem that we've had in
the past, and that is "cdf_routine_name" is undefined.

When I use static libraries, it works. However, the order that the files
are listed in the yMakefile seem to be wrong. I had to reorder them to
be  "-lnc-dap -ldapclient -ldap".

I get an ncl executable that looks like this with "otool -L":

reader[193] otool -l ncl
         /usr/lib/libcurl.3.dylib (compatibility version 4.0.0, current version\
 4.0.0)
         /sw/lib/libxml2.2.dylib (compatibility version 9.0.0, current version \
9.7.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current versi\
on 88.1.8)
         /usr/lib/libssl.0.9.7.dylib (compatibility version 0.9.7, current vers\
ion 0.9.7)
         /usr/X11R6/lib/libXpm.4.dylib (compatibility version 4.11.0, current v\
ersion 4.11.0)
         /usr/X11R6/lib/libX11.6.dylib (compatibility version 6.2.0, current ve\
rsion 6.2.0)
         /usr/X11R6/lib/libXext.6.dylib (compatibility version 6.4.0, current v\
ersion 6.4.0)
         /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current 
on 7.4.0)
         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current versio\
n 1.0.0)


----------------------------------------------------------------------
Marker and dashline problem - See NCL-1473, NCL-1431, NCL-1164


1. There are weird problems with the 2-line script:

  wks = create "test" ncgmWorkstationClass defaultapp end create
  nmark = NhlNewMarker(wks, "+", 4, 0.0, 0.0, 1.0, 0.1, 0.)

on some systems (seems to be with Linux systems running gcc 4.1.2, so
far). It was producing the error message:

fatal:Execute: Error occurred at or near line 2 in file test.ncl

On wedge.rap.ucar.edu, compiling HLUFunctions.c *and* Memory.c with
optimization turned off makes it work.

---
Later, in version 6.0.0 of NCL, and on k7.rap.ucar.edu, I had to
compile just Execute.c and Machine.c with -g instead of -O. It's never
consistent!  Grrr. With V6.1.0-beta, I saw the problem again. It
appears that just compiling Machine.c with -g made it work.

This didn't work for harmon.cgd, however, even with all three
of these files compiled with -g. I even tried compiling all
of the HLU and NCL source code with -g and it didn't work.
I finally decided to revisit HLUFunctions.c to see if I
could rewrite it in a way that might change the behavior.
I did see a weird thing going on with the *index variable,
so I got rid of this and just indexed "indexes" directly.
---

2. For same system as above, I also had to turn off optimization for
"lib/hlu/Format.c" because it would cause the "tm04n.ncl" example to
not generate the correct graphic.

----------------------------------------------------------------------

