Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
1 View

Help Intel Compiler TERRAIN and MM5 modules Oracle Linux

I recently moved from RocksCluster 6.2 with CentOS X86_64 machine -> Oracle Linux OS 7.3.

In RocksCluster compile correctly WRF and MM5 model code, practically without modifications in the makefiles.

Now, on Oracle Linux system I am having problems in TERRAIN and MM5 modules. I can´t understand what has changed in the machine (system level) so I don´t compile now.

a) TERRAIN makefile:

NCARG_ROOT = /export/apps/libraries/ncl
INTEL_LIB = /export/apps/libraries/intel/lib/intel64
NCARGRAPHICS = NONCARG

intel:
	echo "Compiling for Linux using INTEL compiler"
	( $(CD) src ; $(MAKE) all				\
	"RM		= $(RM)" 	"RM_LIST	= $(RM_LIST)"	\
	"LN		= $(LN)" 	"MACH		= SGI"		\
	"MAKE		= $(MAKE)"	"CPP		= /lib/cpp"	\
	"CPPFLAGS	= -I. -C -traditional -D$(NCARGRAPHICS) "	\
	"FC		= ifort  "	"FCFLAGS	= -I. -fpp -convert big_endian "\
	"LDOPTIONS	= -shared-intel” 		"CFLAGS		= -I."		\
	"LOCAL_LIBRARIES= -L$(NCARG_ROOT)/lib -L/usr/lib64 -lcairo -L$(INTEL_LIB) -L/usr/X11R6/lib -lncarg -lncarg_gks -lncarg_c -lX11 -L/usr/lib/gcc/x86_64-redhat-linux/4.8.5 -lg2c" ) ; \
		( $(RM) terrain.exe ; $(LN) src/terrain.exe . ) ;

 

make intel end ->

ld: cannot find -cairo
ld: cannot find -lX11
ld: cannot fin -lg2c
make[1]: [terrain.exe] Error 1 (ignored)

 

b) MM5 configure.user:

#-----------------------------------------------------------------------------
#   7g2. Linux PCs.  Need INTEL and MPICH.
#-----------------------------------------------------------------------------
RUNTIME_SYSTEM = "linux"
MPP_TARGET=$(RUNTIME_SYSTEM)
### edit the following definition for your system
LINUX_MPIHOME = /export/apps/libraries/mpich
MFC = $(LINUX_MPIHOME)/bin/mpif77
MCC = $(LINUX_MPIHOME)/bin/mpicc
MLD = $(LINUX_MPIHOME)/bin/mpif77
FCFLAGS = -O2 -fpp -convert big_endian -pc32
LDOPTIONS = -O2 -convert big_endian -pc32
LOCAL_LIBRARIES = -L$(LINUX_MPIHOME)/lib -lfmpich -lmpich
MAKE = make -i -r
AWK = awk
SED = sed
CAT = cat
CUT = cut
EXPAND = /usr/bin/expand
M4 = m4
CPP = /lib/cpp -C -P -traditional
CPPFLAGS = -traditional -DMPI -Dlinux
CFLAGS = -DMPI -I/usr/local/mpi/include
ARCH_OBJS =  milliclock.o
IWORDSIZE = 4
RWORDSIZE = 4
LWORDSIZE = 4

 

make mpp end ->

.tmpobjs:1: *** missing separator. Stop.

My version of Intel compiler fortran is 17.0.4. gcc version 4.8.5. mpich 3.2.

 

Illinois Modelling Center, USA
0 Kudos
5 Replies
Highlighted
Beginner
1 View

A help here please!..

A help here please!..

There is a very old entry in google about this bug ..

http://www2.mmm.ucar.edu/mm5/mpp/helpdesk/20020906.html

but, I'm surprised that it fails in Oracle Linux and not RocksCluster with CentOS. In RocksCluster compile correctly MM5 model code, practically without modifications in the makefiles. I imagine you have to modify some flags.

 

 

Illinois Modelling Center, USA
0 Kudos
Highlighted
Black Belt
1 View

I do not have access to any

I do not have access to any cluster or to machines with the distros that you listed, so I can only offer suggestions. Not every distro will have development packages installed for optional software such as Cairo, X11 and Gfortran. Check if these libraries are present, and check environment variables such as LIBRARY_PATH, LD_LIBRARY_PATH, etc.

0 Kudos
Highlighted
Valued Contributor I
1 View

libcairo and libX11 are both

libcairo and libX11 are both graphics libraries. so it looks like that the new installation of your cluster machines have been made without graphical support (which is not unusual). libg2c is connected to the legacy package g77 which is not installed as a standard anymore. I think Oracle Linux should have all the rpms in its repo, so ask your sysadmin to install the missing libraries.

I assume that this

make mpp end ->

.tmpobjs:1: *** missing separator. Stop.

is only a consequence of the failed compilation above, otherwise it indicates an error in the Makefile where either a backslash is missing at the 

end of a line or there are whitespaces instead of a tab.  

 

 

0 Kudos
Highlighted
Beginner
1 View

a) About the Terrain module

a) About the Terrain module program I have install the missing libraries with success, except the lcairo, which is not critical to compile. Effectively compile but when i execute the program just doing a ->

forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image
libifcoremt.so.5
libpthread-2.17.s
terrain.exe
terrain.exe


libc-2.17.so
terrain.exe

I already tried it with “ulimit -s unlimited” and not work. Any additional ideas?


b) About MM5 module, Juergen if this is so, how should I modify the Makefile or the file it references to make it work.

This fault was reported in 2002 with the following program versions; gcc v2.96-110 and cpp v2.96-110, which is on Redhat v7.3.

http://www2.mmm.ucar.edu/mm5/mpp/helpdesk/20020906.html

Today should not give problems, at least in RocksCluster with CentOS, but it does with Oracle Linux. :-(

Illinois Modelling Center, USA
0 Kudos
Highlighted
1 View

The segmentation fault could

The segmentation fault could be anything, not just memory.

I'd suggest building with -traceback, and -O0 (turning off optimization) to get a better idea of where the error happened.

If that doesn't help, then you will need to debug the application.

                        --Lorri

0 Kudos