Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

SCAM on lightning

Hi-
I am trying to get SCAM to compile on lightning, but I am getting an error when it gets to the UI loading stage (copied at bottom). I have a couple of questions:
(1) has anyone gotten SCAM to compile successfully on lightning?
(2) i've tried several combinations of different versions of the netcdf and ncarg libraries that are on lightning (listed below), all of which lead to the same error. are there other versions of those libraries that do work, either on lightning or other machines?

/usr/local/ncarg/4.4.2-pgi5.2-64
/opt/ncarg-4.4.0
/contrib/netcdf/3.5.1-pgi-5.1-64
/opt/netcdf-3.5.0
/opt/netcdf-3.5.1
/opt/netcdf-3.6.0-beta6

thanks,
charlie koven

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


Code:
gcc ChangeAxisScaleDlg.moc.o ChangeAxisScaleDlg.o ChangeAxisScaleDlgImpl.moc.o ChangeAxisScaleDlgImpl.o IOPSelectDateDlg.moc.o IOPSelectDateDlg.o IOPSelectDateDlgImpl.moc.o IOPSelectDateDlgImpl.o LoadData.moc.o LoadData.o LoadDataImpl.moc.o LoadDataImpl.o MainWnd.moc.o MainWnd.o MainWndImpl.moc.o MainWndImpl.o OptionsDlg.moc.o OptionsDlg.o OptionsDlgImpl.moc.o OptionsDlgImpl.o PlistDlg.moc.o PlistDlg.o PlistDlgImpl.moc.o PlistDlgImpl.o PlotDlg.moc.o PlotDlg.o PlotDlgImpl.moc.o PlotDlgImpl.o PostPlottingDlg.moc.o PostPlottingDlg.o PostPlottingDlgImpl.moc.o PostPlottingDlgImpl.o SelectGlobalDataDlg.moc.o SelectGlobalDataDlg.o SelectGlobalDataDlgImpl.moc.o SelectGlobalDataDlgImpl.o crm.o dataset.o dbgmodel.o defaults.o field.o fieldlistbox.o fifomodel.o history.o main.o manager.o map.o model.o msgdlg.o ncarg.o ncarg_stubs.o ncfile.o plot.moc.o plot.o rpcmodel.o sicfile.o timeconvert.o utils.o 
          -o ../scamgui -L/opt/netcdf-3.5.0/lib -lnetcdf -L/usr/local/ncarg/4.4.2-pgi5.2-64/lib  -lncarg -lncarg_gks -lncarg_c -lg2c  -L/contrib/Qt-3.3.0/lib -lqt -lqui -L/usr/X11R6/lib64 -lX11 -lXext -lm -ldl
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x8f94): In function `nc_put_vara_text':
: undefined reference to `__builtin_alloca'
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x8fa8): In function `nc_put_vara_text':
: undefined reference to `__builtin_alloca'
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x9314): In function `nc_put_vara_uchar':
: undefined reference to `__builtin_alloca'
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x9328): In function `nc_put_vara_uchar':
: undefined reference to `__builtin_alloca'
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x9694): In function `nc_put_vara_schar':
: undefined reference to `__builtin_alloca'
/opt/netcdf-3.5.0/lib/libnetcdf.a(putget.o)(.text+0x96a8): more undefined references to `__builtin_alloca' follow
/opt/netcdf-3.5.0/lib/libnetcdf.a(string.o)(.text+0x2f): In function `NC_check_name':
: undefined reference to `__ctype_b'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(arinam.o)(.data+0x78): In function `.C1_285':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(arinit.o)(.data+0x8): In function `.C1_342':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(arini2.o)(.data+0x10): In function `.C1_308':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(arscam.o)(.data+0x200): In function `.STATICS1':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(agback.o)(.data+0x28): In function `.C1_305':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(agcurv.o)(.text+0xa4): In function `agcurv_':
: undefined reference to `ftn_str_copy'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(agcurv.o)(.data+0x40): In function `.STATICS1':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(agdash.o)(.data+0x8): In function `.C1_287':
: undefined reference to `pgf90_compiled'
/usr/local/ncarg/4.4.2-pgi5.2-64/lib/libncarg.a(agdflt.o)(.data+0x978): undefined reference to `pgf90_compiled'


etc...
 

rneale

Rich Neale
CAM Project Scientist
Staff member
I have gotten SCAM to compile and build on a number of CGD linux machines (bangkok, salina, mineral). But I have never got it to run on any of the supers. Maybe you could try a linux platform instead.
 
Thanks-

I did get SCAM to compile on lightning. I think the issue I was having was because I was using the gcc and g++ with the pgi f77 and f90 compilers. I made a set of netcdf libraries with that combination of compilers, pointed to those in the configure, and skipped the ncarg libraries (I hadn't realized that it is possible to compile without those if you plan on making plots after the fact...).

As far as using SCAM on a super, yeah it seems like overkill to me too. I tried using one of the linux boxes we have here, but it only has the Intel f90 compiler, which doesn't seem to work. If anyone has a build script for the intel compilers that they'd like to share, that would be much appreciated.

Charlie Koven
charlie at atmos dot berkeley dot edu
 
the problem appears to be an incompatibility between the SCAM c-code and the gcc 3.4.2 compiler. If anyone else notices this problem, or has resolved it using the 3.4.2 version of gcc I would appreciate any further information.
 

rneale

Rich Neale
CAM Project Scientist
Staff member
The GHUI version of CAM is not really supported any longer so I would recommend using the non-GHUI version.
 
Top