[ncl-install] Building NCL from source

Kevin Hallock hallock at ucar.edu
Tue Jan 16 14:32:00 MST 2018


Hi Ashwin,

In order to build NCL, we usually suggest running “make Everything” in order to build all of the necessary components for a complete NCL installation. Please see our documentation on building from source: http://www.ncl.ucar.edu/Download/build_from_src.shtml <http://www.ncl.ucar.edu/Download/build_from_src.shtml>

When you run the Configure script, the second prompt asks for a “Parent installation directory” to install NCL to:
Parent installation directory : /usr/local/ncarg
Enter Return (default), new directory, or q(quit) > /path/to/install/ncl

The default is “/usr/local/ncarg”, but you can change this to any directory you want (note that the NCL binary will be installed to the “bin” subdirectory of the directory you specify, so “/usr/local/ncarg/bin” by default or “/path/to/install/ncl/bin” in my example). You can also define the installation directory in the file “config/Site.local”:
#define YmakeRoot /path/to/install/ncl

Building NCL with “make Everything” should install NCL when it’s done compiling, but if your user account does not have write privileges to the installation directory (this might be a problem for “/usr/local/ncarg”) you may need to run “sudo make install” to complete the installation process.

Additionally, it looks like your build did not run successfully. If you run the command “grep -C3 'error' $logfile” , where $logfile is your make log (“logs” if you use the file you attached to your email), you’ll see several errors related to missing libraries, for example:
gfortran -fPIC -fno-second-underscore -fno-range-check -fopenmp  -O    -o tdpackdemo TdpackDemo.o -L../../../.././ncarg2d/src/libncarg -lncarg -L../../../.././ncarg2d/src/libncarg_gks -lncarg_gks -L../../../.././common/src/libncarg_c -lncarg_c -lcairo -lXrender -lfontconfig -lpixman-1 -lfreetype -lexpat -lpng -lz -liconv -lbz2 -lpng -lz -L/usr/local/ncarg/lib -L/usr/X11R6/lib64  -lX11 -lXext  
/usr/bin/ld: cannot find -liconv
/usr/bin/ld: cannot find -lbz2
collect2: error: ld returned 1 exit status
Makefile:495: recipe for target 'tdpackdemo' failed
make[4]: *** [tdpackdemo] Error 1
make[4]: Leaving directory '/home/winash12/meteorology_project/ncl_ncarg-6.4.0/ncarg2d/src/bin/tdpackdemo'

In this case, it appears as though the iconv and bzip2 libraries were not found by the compiler. You will likely need to install these (and other packages) using your system’s package manager (assuming you’re using Linux) or build them from source. If they are already installed, you may need to adjust the “-I”/“include” and “-L”/“lib” directory paths in config/Site.local (these can also be set while running the Configure script).

Finally, out of curiosity is there a reason that you’ve chosen to build NCL from source instead of installing a pre-compiled binary? I’d be glad to continue helping you build NCL from source, but if you do not explicitly need to build it yourself it is often much easier to install an NCL binary tarball.

I hope this helps!

Kevin

> On Jan 14, 2018, at 10:57 PM, ashwin .D via ncl-install <ncl-install at ucar.edu> wrote:
> 
> Hello,
>           I am trying to build NCL 6.4 from source. Firstly there seems to be no .configure file and it is replaced by a Configure file. It does compile without any problems but I am not sure where the executables are. I have enclosed the logs obtained by typing make install. 
> Do you see any issues ? I do not know how to install under /usr/local/bin. 
> 
> Regards,
> Ashwin.
> <logs>_______________________________________________
> 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/20180116/301ca13d/attachment.html>


More information about the ncl-install mailing list