[parsec-users] Compiling Parsec for i386

David Munday david.x.munday at oracle.com
Sat Jan 22 22:09:36 EST 2011

I think libPhysBAM has it's own makefile. You might need to add -m32 there as well....


-----Original Message-----
From: Binh Q. Pham <binhpham at cs.rutgers.edu>
Sent: Saturday, January 22, 2011 11:43 AM
To: parsec-users at lists.cs.princeton.edu
Subject: [parsec-users] Compiling Parsec for i386


I want to compile Parsec on my host machine, which is 64 bits; and run 
Parsec on my target machine, which is 32 bits. In order to do this, I 
have added -m32 to CFLAGS and CXXFLAGS in gcc.bldconf:

export CFLAGS="-m32 -O3 -funroll-loops -fprefetch-loop-arrays 
export CXXFLAGS="-m32 -O3 -funroll-loops -fprefetch-loop-arrays 
-fpermissive -fno-exceptions ${PORTABILITY_FLAGS}"

I got the following error after running: parsecmgmt -a build:

/usr/bin/ld: skipping incompatible 
when searching for -lPhysBAM
/usr/bin/ld: cannot find -lPhysBAM
collect2: ld returned 1 exit status
make[1]: *** [facesim] Error 1
make[1]: Leaving directory 
make: *** [all] Error 2
[PARSEC] Error: 'env 
CXXFLAGS=-m32 -O3 -funroll-loops -fprefetch-loop-arrays -fpermissive 
-fno-exceptions -static-libgcc -Wl,--hash-style=both,--as-needed 
-DPARSEC_VERSION=2.1 -fexceptions /usr/bin/make' failed.

It looks like PhysBAM is a 64 bit library, and since I want to compile 
for 32 bit target, this library cannot be used. However, I am not sure 
how to solve this problem.

I really appreciate if someone can help me with this, or suggest me 
another way to do this.
Thank you,

parsec-users mailing list
parsec-users at lists.cs.princeton.edu

More information about the parsec-users mailing list