Hi, <br><br>I did autoreconf before "configure". I attached the output from configure and macros.make.<br>Thank you.<br><br>- Shawn<br><br><br>$ ./configure --prefix=/home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1/install --with-mpi=/home/mdl/yuazhang/IOTracing/mpich2-1.0.8 --enable-fortran | & tee c.txt<br>
checking for top-level source-directory... /home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1<br>checking for gcc... mpicc<br>checking for C compiler default output file name... a.out<br>checking whether the C compiler works... yes<br>
checking whether we are cross compiling... no<br>checking for suffix of executables... <br>checking for suffix of object files... o<br>checking whether we are using the GNU C compiler... yes<br>checking whether mpicc accepts -g... yes<br>
checking for mpicc option to accept ISO C89... none needed<br>checking how to run the C preprocessor... mpicc -E<br>checking for grep that handles long lines and -e... /bin/grep<br>checking for egrep... /bin/grep -E<br>checking for ANSI C header files... yes<br>
checking for a BSD-compatible install... /usr/bin/install -c<br>checking for bison... bison -y<br>checking for flex... flex<br>checking for yywrap in -lfl... yes<br>checking lex output file root... lex.yy<br>checking whether yytext is a pointer... yes<br>
configure: checking for m4 preprocessor...<br>checking for m4... m4<br>checking m4 flags... -B10000<br>checking for gcc... (cached) mpicc<br>checking whether we are using the GNU C compiler... (cached) yes<br>checking whether mpicc accepts -g... (cached) yes<br>
checking for mpicc option to accept ISO C89... (cached) none needed<br>checking user-defined Fortran-77 compiler "mpif77"... works<br>checking for Fortran .F compiler... <br>checking if Fortran-77 compiler handles *.F files... yes<br>
checking how to make dependencies... false<br>configure: checking for nm utility...<br>checking for nm... nm<br>checking nm flags... <br>checking for C-equivalent to Fortran routine "SUB"... sub_<br>configure: checking for math library...<br>
checking for tanh in -lc... no<br>checking for tanh in -lm... yes<br>configure: checking for ar utility...<br>checking for ar... ar<br>checking ar flags... cru<br>configure: checking for nm utility...<br>checking for nm... (cached) nm<br>
checking nm flags... <br>checking for ranlib... ranlib<br>checking for C-equivalent to Fortran routine "SUB_A"... sub_a__<br>checking mpi C compiler ... configure: WARNING: mpicc either does not exist or is not executable: falling back to mpicc<br>
using mpicc<br>checking mpi C++ compiler ... using /home/mdl/yuazhang/IOTracing/mpich2-1.0.8/bin/mpicxx<br>checking mpi Fortran 77 compiler ... configure: WARNING: mpif77 either does not exist or is not executable: falling back to mpif77<br>
using mpif77<br>checking mpi Fortran 90 compiler ... configure: WARNING: mpif90 either does not exist or is not executable: falling back to mpif77<br>using mpif77<br>checking MPI-IO support in MPI implementation... yes<br>
checking for sys/types.h... yes<br>checking for sys/stat.h... yes<br>checking for stdlib.h... yes<br>checking for string.h... yes<br>checking for memory.h... yes<br>checking for strings.h... yes<br>checking for inttypes.h... yes<br>
checking for stdint.h... yes<br>checking for unistd.h... yes<br>checking for stdlib.h... (cached) yes<br>checking for sys/types.h... (cached) yes<br>checking for strerror... yes<br>checking for working alloca.h... yes<br>
checking for alloca... yes<br>checking for struct stat.st_blksize... yes<br>checking for IEEE floating point format... yes<br>checking for size_t... yes<br>checking if MPI_Offset is size 8... yes<br>checking for MPI_Request_get_status... yes<br>
checking for MPI_Type_dup... yes<br>checking for MPI_Info_dup... yes<br>checking if MPI includes MPI_COMBINER_DUP... yes<br>checking if MPI includes MPI_COMBINER_HVECTOR_INTEGER... yes<br>checking if MPI includes MPI_COMBINER_HINDEXED_INTEGER... yes<br>
checking if MPI includes MPI_COMBINER_SUBARRAY... yes<br>checking if MPI includes MPI_COMBINER_DARRAY... yes<br>checking if MPI includes MPI_COMBINER_RESIZED... yes<br>checking if MPI includes MPI_COMBINER_STRUCT_INTEGER... yes<br>
checking if MPI includes MPI_COMBINER_INDEXED_BLOCK... yes<br>checking if MPI includes MPI_COMBINER_F90_REAL... yes<br>checking if MPI includes MPI_COMBINER_F90_INTEGER... yes<br>checking if MPI includes MPI_COMBINER_F90_COMPLEX... yes<br>
checking if MPI includes MPI_CHARACTER... yes<br>checking if MPI includes MPI_REAL... yes<br>checking if MPI includes MPI_INTEGER... yes<br>checking if MPI includes MPI_DOUBLE_PRECISION... yes<br>checking if MPI includes MPI_INTEGER1... yes<br>
checking if MPI includes MPI_INTEGER2... yes<br>checking if MPI includes MPI_INTEGER4... yes<br>checking if MPI includes MPI_INTEGER8... yes<br>checking if MPI includes MPI_INTEGER16... yes<br>checking if MPI includes MPI_REAL4... yes<br>
checking if MPI includes MPI_REAL8... yes<br>checking if MPI includes MPI_REAL16... yes<br>checking if MPI includes MPI_COMPLEX8... yes<br>checking if MPI includes MPI_COMPLEX16... yes<br>checking if MPI includes MPI_COMPLEX32... yes<br>
checking if MPI includes MPI_UB... yes<br>checking if MPI includes MPI_LB... yes<br>checking for off_t... yes<br>checking for ssize_t... yes<br>checking for ptrdiff_t... yes<br>checking for uchar... no<br>checking whether char is unsigned... no<br>
checking whether byte ordering is bigendian... no<br>checking for short... yes<br>checking size of short... 2<br>checking for int... yes<br>checking size of int... 4<br>checking for long... yes<br>checking size of long... 4<br>
checking for float... yes<br>checking size of float... 4<br>checking for double... yes<br>checking size of double... 8<br>checking for size_t... (cached) yes<br>checking size of size_t... 4<br>checking sizeof MPI_Offset... (cached) 8<br>
checking for Fortran "byte"... yes<br>checking for Fortran "integer*2"... yes<br>checking if Fortran "byte" is C "signed char"... yes<br>checking if Fortran "byte" is C "short"... no<br>
checking if Fortran "byte" is C "int"... no<br>checking if Fortran "byte" is C "long"... no<br>checking if Fortran "integer*2" is C "short"... yes<br>checking if Fortran "integer*2" is C "int"... no<br>
checking if Fortran "integer*2" is C "long"... no<br>checking if Fortran "integer" is C "int"... yes<br>checking if Fortran "real" is C "float"... yes<br>checking if Fortran "doubleprecision" is C "double"... yes<br>
checking for Fortran-equivalent to netCDF "byte"... byte<br>checking for Fortran-equivalent to netCDF "short"... integer*2<br>checking for Fortran "integer*8"... yes<br>checking for manual-page index command... <br>
checking for special C compiler options needed for large files... no<br>checking for _FILE_OFFSET_BITS value needed for large files... 64<br>checking for _LARGE_FILES value needed for large files... no<br>checking for library containing MPI_File_sync... none required<br>
checking for off_t... (cached) yes<br>checking size of off_t... 8<br>configure: creating ./config.status<br>config.status: creating macros.make<br>config.status: creating Makefile<br>config.status: creating src/Makefile<br>
config.status: creating test/Makefile<br>config.status: creating src/lib/Makefile<br>config.status: creating src/lib/pnetcdf.h<br>config.status: creating src/libf/Makefile<br>config.status: creating test/common/Makefile<br>
config.status: creating test/test_double/Makefile<br>config.status: creating test/test_double_int/Makefile<br>config.status: creating test/test_float/Makefile<br>config.status: creating test/test_int/Makefile<br>config.status: creating test/test_dtype/Makefile<br>
config.status: creating test/nc_test/Makefile<br>config.status: creating test/nf_test/Makefile<br>config.status: creating test/fandc/Makefile<br>config.status: creating src/utils/Makefile<br>config.status: creating src/utils/ncdump/Makefile<br>
config.status: creating src/utils/ncgen/Makefile<br>config.status: creating test/testcases/Makefile<br>config.status: creating test/C/Makefile<br>config.status: creating test/mcoll_perf/Makefile<br>config.status: creating test/test_check_header/Makefile<br>
config.status: creating test/largefile/Makefile<br>config.status: creating test/mcoll_fortran/Makefile<br>config.status: creating src/lib/ncconfig.h<br>config.status: src/lib/ncconfig.h is unchanged<br>config.status: creating src/libf/pnetcdf.inc<br>
config.status: creating src/libf/nfconfig.inc<br><br>parallel-netCDF version 1.1.1pre1 features:<br>. parallel-netcdf configured WITH support for large files<br>. parallel-netcdf configured WITH fortran bindings<br>. parallel-netcdf configured WITH nonblocking routines<br>
. parallel-netcdf configured WITH giant variable support<br><br><br><br>macros.make<br><br># $Id: <a href="http://macros.make.in">macros.make.in</a> 771 2010-01-22 21:00:23Z robl $<br><br># The purpose of this file is to contain common make(1) macros.<br>
# It should be processed by every execution of that utility.<br><br><br># POSIX shell. Shouldn't be necessary -- but is under IRIX 5.3.<br>SHELL = /bin/sh<br><br><br># Installation Directories:<br>SRCDIR = /home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1<br>
prefix = /home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1/install<br>exec_prefix = $(prefix)<br>INCDIR = $(exec_prefix)/include<br>LIBDIR = $(exec_prefix)/lib<br>BINDIR = $(exec_prefix)/bin<br>
MANDIR = $(prefix)/man<br><br><br># Preprocessing:<br>M4 = m4<br>M4FLAGS = -B10000<br>CPP = mpicc -E<br>CPPFLAGS = $(INCLUDES) $(DEFINES)<br>FPP =<br>FPPFLAGS = $(CPPFLAGS)<br>
CXXCPPFLAGS = $(CPPFLAGS)<br><br><br># Compilation:<br>CC = mpicc<br>CXX = /home/mdl/yuazhang/IOTracing/mpich2-1.0.8/bin/mpicxx<br>FC = mpif77<br>F90 = mpif77<br>CFLAGS = -g -O2<br>
CXXFLAGS = -g -O2<br>FFLAGS =<br>F90FLAGS =<br>NETCDF.MOD = @NETCDF_MOD@<br>CC_MAKEDEPEND = false<br>COMPILE.c = $(CC) -c $(CFLAGS) $(CPPFLAGS)<br>COMPILE.cxx = $(CXX) -c $(CXXFLAGS) $(CXXCPPFLAGS)<br>
COMPILE.f = $(FC) -c $(FFLAGS)<br>COMPILE.F90 = $(F90) -c $(F90FLAGS)<br># The following command isn't available on some systems; therefore, the<br># `.F.o' rule is relatively complicated.<br>COMPILE.F = $(COMPILE.f) $(FPPFLAGS)<br>
<br><br># Linking:<br>MATHLIB = -lm <br>FLIBS =<br>F90LIBS = @F90LIBS@<br>LIBS =<br>F90LDFLAGS = $(LDFLAGS)<br>LINK.c = $(CC) -o $@ $(CFLAGS) $(LDFLAGS)<br>LINK.cxx = $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS)<br>
LINK.F = $(FC) -o $@ $(FFLAGS) $(FLDFLAGS)<br>LINK.f = $(FC) -o $@ $(FFLAGS) $(FLDFLAGS)<br>LINK.F90 = $(F90) -o $@ $(F90FLAGS) $(F90LDFLAGS)<br><br><br># Manual pages:<br>WHATIS = whatis<br>
# The following macro should be empty on systems that don't<br># allow users to create their own manual-page indexes.<br>MAKEWHATIS_CMD = <br><br><br># Misc. Utilities:<br>AR = ar <br>ARFLAGS = cru <br>
RANLIB = ranlib<br>TARFLAGS = -chf <br><br><br># Dummy macros: used only as placeholders to silence GNU make. They are<br># redefined, as necessary, in subdirectory makefiles.<br>HEADER = dummy_header<br>
HEADER1 = dummy_header1<br>HEADER2 = dummy_header2<br>HEADER3 = dummy_header3<br>LIBRARY = dummy_library.a<br>MANUAL = dummy_manual<br>PROGRAM = dummy_program<br><br><br># Distribution macros:<br>
FTPDIR = /home/ftp/pub/$(PACKAGE)<br>FTPBINDIR = @FTPBINDIR@<br>VERSION = dummy_version<br><br><br><br><br><div class="gmail_quote">On Wed, Feb 3, 2010 at 2:09 AM, Wei-keng Liao <span dir="ltr"><<a href="mailto:wkliao@ece.northwestern.edu">wkliao@ece.northwestern.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi, Shawn<br>
<br>
Did you run "autoreconf" before "configure"?<br>
<br>
Can you send us the standard output from you configure run<br>
and the file macros.make?<br><font color="#888888">
<br>
Wei-keng</font><div><div></div><div class="h5"><br>
<br>
<br>
On Feb 2, 2010, at 11:30 PM, Shawn Kim wrote:<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi, all<br>
<br>
I recently installed the newest parallel-netcdf-1.1.1 on two different machines with different (MPICH2 + PVFS2)'s.<br>
I succeeded it on one machine but I failed it on the other machine. (I slighly modified MPI_IO function calls but I believed it didn't affect the compilation.)<br>
Both are in the same clusters. Error occurred while compiling libf.<br>
<br>
/bin/rm -f pnetcdf.F90<br>
echo "module pnetcdf" > pnetcdf.F90<br>
/bin/cat pnetcdf.inc >> pnetcdf.F90<br>
echo "end module pnetcdf" >> pnetcdf.F90<br>
mpif77 -c -c pnetcdf.F90<br>
g77: pnetcdf.F90: linker input file unused because linking not done<br>
/usr/bin/install -c -d -m 755 /home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1/install/include<br>
/usr/bin/install -c -m 644 pnetcdf.inc pnetcdf.mod /home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1/install/include<br>
/usr/bin/install: cannot stat `pnetcdf.mod': No such file or directory<br>
make: *** [/home/mdl/yuazhang/IOTracing/benchmark/parallel-netcdf-1.1.1/install/include/pnetcdf.inc] Error 1<br>
<br>
The error part is:<br>
mpif77 -c -c pnetcdf.F90<br>
g77: pnetcdf.F90: linker input file unused because linking not done<br>
<br>
It seems to me like fortran compiler mismatch, but in the other machine it works without any error or warning. I did set environment variable correctly like:<br>
<br>
CC=mpicc<br>
FC=mpif77<br>
F90=mpif90<br>
MPICC=mpicc<br>
MPIF77=mpif77<br>
MPIF90=mpif90<br>
<br>
What else can I do?<br>
<br>
Thank you in advance.<br>
<br>
- Shawn<br>
</blockquote>
<br>
</div></div></blockquote></div><br>