|
MRG Interactive DevelopmentsMesoscale Research Group, McGill University |
The best place to get the full story (not to metion source code, mailing lists, and all sorts of other goodies) about the NCAR Graphics package is directly from the NCAR Graphics Homepage. The information given here is specific to installations using the Portland Group F90 and CC compilers (in this case on a Linux Fedora platform).
Version 4.4.x NCAR Graphics packages have a strange configuration bug that can result in a message "ymake: Command not found" immediately upon beginning the configuration process. This is a result of a trimming of the $NCARG path to the first directory called "ncarg". The (easy, but not obvious) solution to this problem is to make sure that your unpacked NCAR Graphics package does not reside in a subdirectory of anything called "ncarg". Do a `pwd` in the top level directory of the NCAR Graphics distro to determine if this problem could be affecting your configuration.
We ran into a few problems in the compilation stage for the NCAR Graphics package (v4.3.1). The first step of the process is to follow the INSTALL file instructions (distribued at the top level of your source code) concerning the force to use Portland Group compilers exclusively during the build (it seems like a bad idea to combine pgf90 with gcc since there are some C to FORTRAN interfacing routines that require crossover libraries). I actually copied the LINUX.pgi setup file directly into the LINUX options (in the ./config directory) and made sure that:
Several compile-time errors were reported by the strict pgf90 compiler. The favourite was a complaint about characters in the continuation field (column 5 in archaic FORTRAN) - these are scattered throughout the code wherever someone was lazy and hit the space bar instead of the tab button following a numeric line identification. I couldn't find a compiler flag to supress this warning without turning off almost all other warnings, so I just went through and edited the (about 5) files by hand. The other compile-time error arose from continued write statements or format specifiers that wrapped around lines without closing quotes. There are only three or so of these, and the warnings can be shortened to a single line in length (or the quotes closed and reopened on the continuation line).
That took care of almost all of the compiler hiccups until we reached ./ncarview/src/bin/ictrans, where we got linker errors for the undefined symbol 'pgf90_compiled'. This seems to be a problem in the Portland Group libraries (i.e. the necessary library is missing from the compile path - seems to me it should be available to the linker, but hey, whatever). The fix for this involves modification of the yMakefile in the ./ncarview/src/bin/ictrans directory - a crude hack looks something like:
We also had some problems with the fontcap and graphcap drivers, which were not installed to the $prefix/lib/ncarg/*cap/* directories by default. This is likely because of all of our other messing about and recompiling - for us the easy solution was to rebuild 'make All' and reinstall 'make install' from the appropriate ./common/src/*cap subdirectories.
Note that recent versions (4.4.0 and later) of NCAR Graphics seem to have resolved the problem with compilation using Portland Group compilers. This patch is not necesssary for newer NCAR Graphics packages. We have constructed a patch from our changes that can be applied using the 'patch -p 1 -u -i ncarg-4.3.1-linux-pgi_patch' command from the distribution's top-level directory (if you don't have gzip, you can download the compressed version here). The patch should be applied BEFORE running the './Configure' guessing script for NCAR Graphics. Once the configuration is complete, you still need to check the ./config/Site.local file to make sure that the compilers are set as listed above.
Strangely enough for a distribution that otherwise offers mind numbing flexiblity, there doesn't seem to be an easy way to change the size of labels on a colour bar, plotted by the LABELBAR package (call to LBLBAR). The interals for the LABELBAR package permit the user to change the colour (CLB) and witdth (WLB) of the label characters, but the size is always determined automatically. Granted that it usually does a very good job, but there are times when tweaking might be a good idea. For that reason, we have developed Label Size patch that introduces a new internal variable controlling the character size (SLB - real). A value of 0 (default) or negative results in the standard automated behaviour. Any positive real number will result in the character plotting routine (PLCHHQ) using the point size indicated to plot the label characters. The value of SLB is set as for any other internal using the PLSETR routine, and can be retrieved using the PLGETR routine. To apply this patch, download (right click and 'save' if necessary) it into the top level of the NCAR Graphics source directory, then run `patch -p 0 -b -z .lblSize < lblSize.diff` before running `make Everything`. If you have already run `make Everything`, then it will need to be run again once the patch is applied.
Questions or Comments? Contact our WebMaster.