first success story on NEC SX

rene.redler redler at ccrl-nece.de
Wed Jul 30 09:59:46 CDT 2003


Hello,

  after some Makefile editing tests ran successfully on a SX.

> Could you tell me more about the 'other odd
> things'?  It may drive me crazy, but we're going to try to get the
> Makefiles to work with as many make implementations as possible.

Starting again with version 0.8.7 it does not work when using the cross 
compiler on a front end machine (in my case a Linux PC). When specifying 
only MPIF77 and MPICC for using the cross compiler some configure test are 
done by using the g++ on the Linux system, where in particular pointer 
size do not match with those on the SX. When specifying CC and CXX with 
the cross compiler the configure fails since the executable that are 
generated for the SX cannot be executed on the Linux system.

On the SX the following environment variables have been defined

MPIF77=mpif90
MPICC=mpic++
CC=c++
CXX=c++
ARFLAGS=r

Makefile.in in directory /src/lib

#       v1hpg.c
#       ncio.c \
#       putget.c \

PACKING_LIST = \

causes the whole PACKING_LIST to be in the comment line as well

same for

#       onstack.h \

LIB_OBJS = $(LIB_CSRCS:.c=.o)

I needed to eliminate the backslashes after putget.c and onesteck.h.

make and make install worked fine with these modifications.


Makefile.in in directory test:

pushd and popd are not supported on the SX. I replaced

do pushd . ; cd $$i && $(MAKE); popd; done

by

do cd $$i && $(MAKE); cd .. ; done


In directories test_int, test_float, test_double_int and test_double I 
replaced the Makefile.in by the one that is attached to this mail.

test_read in test_int, test_float and test_double worked fine.

Rene

-------------- next part --------------
srcdir		= @srcdir@
VPATH		= @srcdir@

NETCDF		= @prefix@

INCLUDES	= -I$(NETCDF)/include -I$(srcdir)/../common

CC		= @MPICC@
CFLAGS          = @CFLAGS@ $(INCLUDES) 

SRCS		= test_read.c test_read_indep.c test_write.c test_write_indep.c
OBJS		= $(SRCS:.c=.o)
PROGS		= test_read test_read_indep test_write test_write_indep
LDFLAGS		= -L$(NETCDF)/lib -L..//common @LDFLAGS@
LIBS		= -lpnetcdf -ltestutils @LIBS@

.c.o:
	$(CC) $(CFLAGS) -c $<

all:		$(PROGS)

test_read: test_read.o
	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)
test_read_indep: test_read_indep.o 
	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)
test_write: test_write.o
	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)
test_write_indep: test_write_indep.o
	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)

clean:
		rm -f $(OBJS) $(PROGS) *.nc


More information about the parallel-netcdf mailing list