Thanks a lot for your reply, Jeff!  I think I figure out why I got this trouble but am still looking for a way to work around it. The Mac I have has a 64-bit processor but its kernel is 32-bit. When I installed gnu-gcc, it identified the architecture as x86_64--I cannot install it if I force it to be i386. But the OMPI treat the arch as i386. If I try to force it to be x86_64, I got the problem I mentioned before....

On Thu, Apr 15, 2010 at 8:22 AM, Jeff Squyres <jsquyres@cisco.com> wrote:
I tested on Snow Leopard on my MBP with gcc 4.5.0 from http://hpc.sf.net -- gcc doesn't seem to recognize -arch at all.  This seems to agree with the output from your 1st attachment.  Keep in mind that this is a gcc issue, not a configure issue.  If gcc doesn't accept the flag you're passing, there's not much OMPI can do.

For your second tarball, somehow the flags you're setting are not getting into configure.  Looking in your 2nd config.out and config.log, I don't see those flags being used (which makes sense, because gcc would have barfed they were being used and you would have ended up with the same result as in your first case).  I don't see any errors in any of the files (including make.out) -- did you not capture the stderr?

So let's take a step back and ask: why do you want to pass -arch xa8_64?  Is that necessary?



On Apr 11, 2010, at 11:48 PM, Baowei Liu wrote:

> Hi all,
>
> I installed gnu-gcc-4.4.3 on our Mac and found out openMPI didn't work any
> longer. I tried a lot of things to install openMPI back but failed. I
> installed the new gnu-gcc-4.5 and got similar problem.
>
>
> I followed the information on this mailing list and used option "-arch
> x86_64" for compilers to try to get rid of the following error:
>
> as: more than one -arch option (not allowed, use cc(1) instead)
>
> make[2]: *** [coll_hierarch.lo] Error 1
>
> make[1]: *** [all-recursive] Error 1
> make: *** [all-recursive] Error 1
>
> I tried two ways:
>
> 1.
> ./configure --prefix=/usr/local/openmpi --enable-static CC=gcc FC=gfortran
>
> F77=gfortran CXX=g++ CFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64"
>
> FCFLAGS="-m64 -arch x86_64" FFLAGS="-m64 -arch x86_64" --with-gnu-ld
>
> Configure failed. It seems the configure doesn't recognize the option
>
> -arch x86_64
>
>
> Then I did
> 2.
> export CFLAGS="-arch x86_64"
> export CXXFLAGS="-arch x86_64"
> export FCFLAGS="-m64 -arch x86_64"
> export FFLAGS="-m64 -arch x86_64"
>
> export OBJCFLAGS="-arch x86_64"
>
> export
> DYLD_LIBRARY_PATH=/usr/local/gcc-4.5/lib/gcc/x86_64-apple-darwin10.2.0/4.6.0/include
>
> ./configure --prefix=/usr/local/openmpi CC=gcc FC=gfortran F77=gfortran
>
> CXX=g++ --with-gnu-ld
>
>
> Configure passed but it gave same making error.
>
> Any hint?
>
> Thanks,
> Bill
> <ompi-output_1.tar.bz2><ompi-output_2.tar.bz2>_______________________________________________
--
Jeff Squyres
jsquyres@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


_______________________________________________