Hi Jeff,

Recreating the problem will probably be a bit convoluted, but should be possible.  Things are also complicated by the fact that I'm using the current developers' version of petsc.  I am presently getting around the problem by reverting to an older version of g95, but I believe that this is a symptom of the problem rather than the cause.  The primary differences between the two versions is that the newer one does not include libgcc_s.dylib.  Anyway, assuming you have access to a Tiger system, here is how you should be able to recreate the situation:

1.  Install the current fink version of g95 (0.50-20051002).

2.  Configure and build Open MPI after setting FC and F77 to g95.

3.  Get the current developers' version of PETSc.  I believe there is a tarball version available at ftp.mcs.anl.gov/pub/petsc.  They used to hide it by putting a dot in front of the name, but I just looked and that no longer seems to be the case.  I am instead using the open-source BitKeeper client to grab things.  You will need to get both the main package (bk://petsc.bkbits.net/petsc-dev) as well as the BuildSystem package (bk://sidl.bkbits.net/BuildSystem), which should be installed in ${PETSC_DIR}/python/BuildSystem.

4.  This is where things get a little tricky.  So far, I have to edit a couple of the PETSc files to get things working properly with Open MPI.  Open MPI appears to build two-level namespace libraries on OSX by default, where PETSc attempts to build the old-style flat namespace libraries.  I haven't been able to get shared and dynamic libraries to build properly using their default setup with Open MPI.  The two files in question are ${PETSC_DIR}/bmake/common/rules.shared.basic and ${PETSC_DIR}/python/BuildSystem/config/setCompilers.py.  I have attached edited copies of both files.  If you want to build the python bindings using Open MPI, you also need to edit a third file (${PETSC_DIR}/python/config/base.py), which I have also attached.

5.  Configure PETSc:

./config/configure.py \
--PETSC_ARCH=darwin8.2.0-openmpi-opt \
--with-clanguage=c++ \
--with-c-support \
--with-cc=mpicc \
--with-cxx=mpic++ \
--with-fc=mpif90 \
--with-shared \
--with-dynamic \
--with-python \
--sharedLibraryFlags='-dynamiclib -single_module -undefined dynamic_lookup -multiply_defined suppress' \
--dynamicLibraryFlags='-bundle -undefined dynamic_lookup -multiply_defined suppress' \

If the --sharedLibraryFlags and --dynamicLibraryFlags worked the way I think they should, editing the files would not be necessary.  If you don't edit the files, though, these settings get overridden.

6.  Build PETSc (things should build OK), and then try 'make test', which I believe will duplicate what is pasted below.

If you have any insights into what the problem might be, I would certainly appreciate it.  Thanks for your help.