f77 -g -o secondf secondf.o -L/usr/local/mpich/lib/sun4/ch_p4 -lmpich invalid option -L/usr/local/mpich/lib/sun4/ch_p4 ld: -lmpich: No such file or directoryA: This f77 program does not accept the -L command to set the library search path. Some systems provide a shell script for f77 that is very limited in its abilities. To work around this, use the full library path instead of the -L option:
f77 -g -o secondf secondf.o /usr/local/mpich/lib/sun4/ch_p4/libmpich.aAs of the mpich 1.2.0 release, the mpich configure attempts to find the correct option for indicating library paths to the Fortran compiler. If you find that the mpich configure has made an error, please submit a bug report to mpi-bugs@mcs.anl.gov.
2. Q:
When linking Fortran programs, I get undefined symbols such as
f77 -c secondf.f secondf.f: MAIN main: f77 -o secondf secondf.o -L/home/mpich/lib/solaris/ch_shmem -lmpich Undefined first referenced symbol in file getdomainname /home/mpich/lib/solaris/ch_shmem/libmpi .a(shmempriv.o) ld: fatal: Symbol referencing errors. No output written to secondfThere is no problem with C programs.
A: This means that your C compiler is providing libraries for you that your Fortran compiler is not providing. Find the option for the C compiler and for the Fortran compilers that indicate which library files are being used (alternately, you may find an option such as -dryrun that shows what commands are being used by the compiler). Build a simple C and Fortran program and compare the libraries used (usually on the ld command line). Try the ones that are present for the C compiler and missing for the Fortran compiler.
3. Q:
When trying to run configure, I get error messages like
./configure: syntax error at line 20: `(' unexpectedA: You have an obsolete version of the Bourne shell (sh). MPICH requires that the sh shell support shell procedures; this has been standard in most Bourne shells for years. To fix this, you might consider (a) getting an update from your vendor or (b) installing one of the many publically available sh-shell replacements.