On Sat, 2008-02-02 at 09:20 +0530, Kumar Appaiah wrote: > On 02/02/2008, Adam C Powell IV wrote: > > On Thu, 2008-01-31 at 07:40 -0500, Adam C Powell IV wrote: > > > On Thu, 2008-01-31 at 11:36 +0530, Kumar Appaiah wrote: > > > > Further diagnosis showed that these are the error causing lines, along > > > > with the fixes: > > > > > > > > diff -u mpich-1.2.7/src/fortran/configure > > > > mpich-1.2.7/src/fortran/configure > > > > --- mpich-1.2.7/src/fortran/configure > > > > +++ mpich-1.2.7/src/fortran/configure > > > > @@ -15820,11 +15820,11 @@ > > > > # turn off f90 > > > > F90="" > > > > else > > > > - F90_MODINCFLAG="`$MAKE -f ../../f90modules/Makefile f90modflag`" > > > > - F90MODINCSPEC="`$MAKE -f ../../f90modules/Makefile f90modspec`" > > > > + F90_MODINCFLAG="`$MAKE -s -f ../../f90modules/Makefile > > > > f90modflag`" > > > > + F90MODINCSPEC="`$MAKE -s -f ../../f90modules/Makefile > > > > f90modspec`" > > > > if test -z "$USER_SET_F90INC" -a -z "$F90INC" ; then > > > > # This should use a test or try to get it from the > > > > f90module. > > > > - F90INC=`$MAKE -f ../../f90modules/Makefile f90incflag` > > > > + F90INC=`$MAKE -s -f ../../f90modules/Makefile f90incflag` > > > > fi > > > > fi > > > > fi > > > > > > > > For some reason, make was printing "make[1]: entering directory..." > > > > (and confusing the build). And this resulted in a bad config.status, > > > > with sed errors (and commands like sed s,make[1] ...), which produced > > > > an empty mpe_fortdefs.h, which didn't result in defines for the > > > > relevant MPI_* stuff. > > > > I'm not getting something here. In my build, and I see in yours as > > well, there's this: > > > > make --no-print-directory mpi-addons > > Making a shared library of libmpich.a > > farg.o: In function `mpir_iargc_': > > farg.f:(.text+0x9): undefined reference to `_gfortran_iargc' > > farg.o: In function `mpir_getarg_': > > farg.f:(.text+0x39): undefined reference to `_gfortran_getarg_i4' > > collect2: ld returned 1 exit status > > Successfully linked libmpich.a > > Making a shared library of libpmpich.a > > farg.o: In function `mpir_iargc_': > > farg.f:(.text+0x9): undefined reference to `_gfortran_iargc' > > farg.o: In function `mpir_getarg_': > > farg.f:(.text+0x39): undefined reference to `_gfortran_getarg_i4' > > collect2: ld returned 1 exit status > > Successfully linked libpmpich.a > > Making a shared library of libfmpich.a > > farg.o: In function `mpir_iargc_': > > farg.f:(.text+0x9): undefined reference to `_gfortran_iargc' > > farg.o: In function `mpir_getarg_': > > farg.f:(.text+0x39): undefined reference to `_gfortran_getarg_i4' > > collect2: ld returned 1 exit status > > Successfully linked libfmpich.a > > Making a shared library of libpmpich++.a > > Successfully linked libpmpich++.a > > Testing that MPI applications can be linked with shared libs... > > This is due to the following patch I introduced: > > @@ -170,7 +170,10 @@ > libbase=`basename $libname .a` > # The -h name sets the name of the object; this is necessary to > # ensure that the dynamic linker can find the proper shared library. > - if $CLINKER -shared -Wl,-h,$libbase.$slsuffix -o > ../shared/$libbase.$slsuffix *.o $OtherLibs ; then > + export F77_GETARGDECL="intrinsic GETARG" > + if $CLINKER -shared -Wl,-h,$libbase.$slsuffix -o > ../shared/$libbase.$slsuffix *.o $OtherLibs ; then > + echo Successfully linked $libname > + elif gfortran -shared -Wl,-h,$libbase.$slsuffix -o > ../shared/$libbase.$slsuffix *.o $OtherLibs ; then > echo Successfully linked $libname > else > echo "Linking $libname shared lib failed " > > Note that $CLINKER will fail to resolve the getarg calls. However, the > elif case retries with gfortran, and thus, ends up linking fine. The > ideal solution would be for you to use $CLINKER for those stuff which > don't need GETARG, and gfortran for linking the stuff which uses > GETARG.
Ah yes, forgot about that. Thanks for the clarification. I'll go ahead and upload. It would be nice if it didn't print the error messages... Maybe for -7 I'll have it print a success message if gfortran works. [snip] > > I've neatened up the patches, and am putting everything at > > http://lyre.mit.edu/~powell/mpich/ with a bunch of new mpif90 support > > stuff. If you're sure it's right, I'll upload it. But it will have to > > get through the new queue because of the ldbl->gf name change. > > I guess things should be fine, though you might want others with > rdepends to check. To allay fears of breakage, experimental might be > OK? Because mpicc and friends seem to work, I think I'll try unstable and if it causes problems I'll deal with those later. > > [BTW, are you on debian-beowulf and/or debian-science? If so, I won't > > CC you in my announcement to those lists of the mpich transition.] > > No, I am not (yet). Please do CC me, though I'll be a mere observer. Okay, will do. Thanks again, -Adam -- GPG fingerprint: D54D 1AEE B11C CE9B A02B C5DD 526F 01E8 564E E4B6 Engineering consulting with open source tools http://www.opennovation.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]