Do ./configure --help and you'll see options for specifying the host and build 
target. You need to do that when cross-compiling.


On Oct 25, 2010, at 12:01 PM, saahil...@gmail.com wrote:

> ---------- Forwarded message ----------
> From: saahil...@gmail.com
> Date: Oct 25, 2010 11:26pm
> Subject: Cross compiling for 32 bit from a 64 bit machine
> To: us...@open-mpi.org
> CC: 
> 
> 
> > Hello, 
> > I am a beginner using Open MPI to set up a simple Beowulf cluster of PCs 
> > for my Distributed Systems lab. My head node is my x86_64 architecture 
> > Fedora 12 machine. The rest of my nodes are i386 Fedora 13 machines. I 
> > understand that I need to compile Open MPI with CFLAGS=-m32 so that I can 
> > use -m32 flag to create a 32 bit compatible binary. I could not do this 
> > using yum install. So I am using the tarball for Open MPI 1.5. 
> > my configure command is as follows - 
> > 
> > ./configure --prefix=/home/wolf/openmpi/ CFLAGS=-m32 CXXFLAGS=-m32 
> > FFLAGS=-m32 FCFLAGS=-m32
> > 
> > This works fine. However, while doing make I get the following errors - 
> > 
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-preopen.o)' is incompatible 
> > with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-lt__alloc.o)' is incompatible 
> > with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-lt_dlloader.o)' is 
> > incompatible with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-lt_error.o)' is incompatible 
> > with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-ltdl.o)' is incompatible with 
> > i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlc_la-slist.o)' is incompatible 
> > with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(lt__strl.o)' is incompatible with i386 
> > output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(libltdlcS.o)' is incompatible with i386 
> > output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `../opal/libltdl/.libs/libltdlc.a(dlopen.o)' is incompatible with i386 
> > output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `asm/.libs/libasm.a(atomic-asm.o)' is incompatible with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `event/.libs/libevent.a(signal.o)' is incompatible with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `event/.libs/libevent.a(epoll.o)' is incompatible with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `event/.libs/libevent.a(poll.o)' is incompatible with i386 output
> > /usr/bin/ld: i386:x86-64 architecture of input file 
> > `event/.libs/libevent.a(select.o)' is incompatible with i386 output
> > /usr/bin/ld: final link failed: Invalid operation
> > collect2: ld returned 1 exit status
> > make[2]: *** [libopen-pal.la] Error 1
> > make[2]: Leaving directory `/home/wolf/Downloads/openmpi-1.5/opal'
> > make[1]: *** [all-recursive] Error 1
> > make[1]: Leaving directory `/home/wolf/Downloads/openmpi-1.5/opal'
> > make: *** [all-recursive] Error 1
> > 
> > 
> > Any idea as to how to go around fixing this? Any help would be greatly 
> > regarded, since I'm supposed to meet a deadline, and half of my semester 
> > has been spent trying to get either LAM-MPI or Open MPI (which I was 
> > suggested I shift to) to work.
> > Thank you very much. 
> > 
> > Regards, 
> > Saahil_______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Reply via email to