Re: [OMPI users] Creating 64-bit PPC objects with xlc?

2010-11-09 Thread Jeff Squyres
I wonder if this is a Libtool bug.

Brad / Nysal / IBM -- are you able to replicate this issue with the 1.4.3 
tarballs?  If so, are you able to replace it with a 1.5 tarball?  (we changed 
versions of Libtool between 1.3.x/1.4.x and 1.5)



On Nov 9, 2010, at 2:34 PM, Price, Brian M (N-KCI) wrote:

> OpenMPI version: 1.3.3 & 1.4.3
> 
> Platform: IBM P5
> 
> Issue:  I want OpenMPI to support some existing 64-bit FORTRAN software, but 
> I can’t seem to get 64-bit objects from OpenMPI without some modification to 
> the Makefile in ompi/mpi/f90.
> 
> I can configure, build, and install just fine with the following compilers:
> 
> -  CC = xlC_r
> 
> -  CXX = xlC_r
> 
> -  F77 = xlf95_r
> 
> -  FC = xlf95_r
> 
> But, this configuration produces 32-bit objects for all languages.
> 
> So, to produce 64-bit objects for all languages, I supply the following flags:
> 
> -  CFLAGS = -q64
> 
> -  CXXFLAGS = -q64
> 
> -  FFLAGS = -q64
> 
> -  FCFLAGS = -q64
> 
> This configuration results in the following error during the build (more 
> specifically, link) phase:
> 
> -  When creating libmpi_f90.la in ompi/mpi/f90
> 
> -  COMMANDS:
> 
> o   /bin/sh ../../../libtool  --mode=link xlf95_r -I../../../ompi/include 
> -I../../../ompi/include -I. -I. -I../../../ompi/mpi/f90  -q64 -version-info 
> 0:1:0  -export-dynamic  -o libmpi_f90.la -rpath /lib mpi.lo 
> mpi_sizeof.lo mpi_comm_spawn_multiple_f90.lo mpi_testall_f90.lo 
> mpi_testsome_f90.lo mpi_waitall_f90.lo mpi_waitsome_f90.lo mpi_wtick_f90.lo 
> mpi_wtime_f90.lo  ../../../ompi/libmpi.la -lnsl -lutil
> 
> o   libtool: link: /usr/bin/ld -m elf64ppc -shared  .libs/mpi.o 
> .libs/mpi_sizeof.o .libs/mpi_comm_spawn_multiple_f90.o 
> .libs/mpi_testall_f90.o .libs/mpi_testsome_f90.o .libs/mpi_waitall_f90.o 
> .libs/mpi_waitsome_f90.o .libs/mpi_wtick_f90.o .libs/mpi_wtime_f90.lo  
> -L/orte/.libs -L/opal/.libs ../../../ompi/.libs/libmpi.so 
> /orte/.libs/libopen-rte.so /opal/.libs/libopen-pal.so -ldl 
> -lnsl -lutil  -q64  -soname libmpi_f90.so.0 -o .libs/libmpi_f90.so.0.0.1
> 
> -  OUTPUT:
> 
> /usr/bin/ld: unrecognized option ‘-q64’
> /usr/bin/ld: use the --help option for usage information
> make[4]: *** [libmpi_f90.la] Error 1
> make[4]: Leaving directory `/ompi/mpi/f90`
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/ompi/mpi/f90`
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/ompi/mpi/f90`
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/ompi`
> make: *** [all-recursive] Error 1
>  
> The -q64 option, while valid for the xlf95_r compiler, is not a valid option 
> for /usr/bin/ld.  So, I’m wondering why this option got passed to 
> /usr/bin/ld.  After looking at /ompi/mpi/f90/Makefile, I see that 
> FCFLAGS shows up in link lines (“libmpi_f90_la_LINK” and “FCLINK”).  This 
> direction seems to come from Makefile.in.
> 
> If I remove these FCFLAGS references from the Makefile, I am able to complete 
> the build and install of OpenMPI, and it seems to correctly support my 
> existing software.
> 
> So,  now for my question:
> 
> Should FCFLAGS show up on these links lines and, if so, how would I get 
> 64-bit objects?
> 
> Thanks,
> 
> Brian Price
> 
>  
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




Re: [OMPI users] Creating 64-bit objects?

2010-11-09 Thread Prentice Bisbal
How are you specifying these flags? Are you setting them as environment
variables, or are you adding them to the configure command line?

Can you show us the exact commands you used?

Prentice


Price, Brian M (N-KCI) wrote:
> OpenMPI version: 1.3.3 & 1.4.3
> 
> Platform: IBM P5
> 
> Issue:  I want OpenMPI to support some existing 64-bit FORTRAN software,
> but I can’t seem to get 64-bit objects from OpenMPI without some
> modification to the Makefile in ompi/mpi/f90.
> 
> I can configure, build, and install just fine with the following compilers:
> 
> -  CC = xlC_r
> 
> -  CXX = xlC_r
> 
> -  F77 = xlf95_r
> 
> -  FC = xlf95_r
> 
> But, this configuration produces 32-bit objects for all languages.
> 
> So, to produce 64-bit objects for all languages, I supply the following
> flags:
> 
> -  CFLAGS = -q64
> 
> -  CXXFLAGS = -q64
> 
> -  FFLAGS = -q64
> 
> -  FCFLAGS = -q64
> 
> This configuration results in the following error during the build (more
> specifically, link) phase:
> 
> -  When creating libmpi_f90.la in ompi/mpi/f90
> 
> -  COMMANDS:
> 
> o   /bin/sh ../../../libtool  --mode=link xlf95_r
> -I../../../ompi/include -I../../../ompi/include -I. -I.
> -I../../../ompi/mpi/f90  -q64 -version-info 0:1:0  -export-dynamic  -o
> libmpi_f90.la -rpath /lib mpi.lo mpi_sizeof.lo
> mpi_comm_spawn_multiple_f90.lo mpi_testall_f90.lo mpi_testsome_f90.lo
> mpi_waitall_f90.lo mpi_waitsome_f90.lo mpi_wtick_f90.lo
> mpi_wtime_f90.lo  ../../../ompi/libmpi.la -lnsl -lutil
> 
> o   libtool: link: /usr/bin/ld -m elf64ppc -shared  .libs/mpi.o
> .libs/mpi_sizeof.o .libs/mpi_comm_spawn_multiple_f90.o
> .libs/mpi_testall_f90.o .libs/mpi_testsome_f90.o .libs/mpi_waitall_f90.o
> .libs/mpi_waitsome_f90.o .libs/mpi_wtick_f90.o .libs/mpi_wtime_f90.lo 
> -L/orte/.libs -L/opal/.libs
> ../../../ompi/.libs/libmpi.so /orte/.libs/libopen-rte.so
> /opal/.libs/libopen-pal.so -ldl -lnsl -lutil  -q64  -soname
> libmpi_f90.so.0 -o .libs/libmpi_f90.so.0.0.1
> 
> -  OUTPUT:
> 
> /usr/bin/ld: unrecognized option ‘-q64’
> 
> /usr/bin/ld: use the --help option for usage information
> 
> make[4]: *** [libmpi_f90.la] Error 1
> 
> make[4]: Leaving directory `/ompi/mpi/f90`
> 
> make[3]: *** [all-recursive] Error 1
> 
> make[3]: Leaving directory `/ompi/mpi/f90`
> 
> make[2]: *** [all] Error 2
> 
> make[2]: Leaving directory `/ompi/mpi/f90`
> 
> make[1]: *** [all-recursive] Error 1
> 
> make[1]: Leaving directory `/ompi`
> 
> make: *** [all-recursive] Error 1
> 
>  
> 
> The -q64 option, while valid for the xlf95_r compiler, is not a valid
> option for /usr/bin/ld.  So, I’m wondering why this option got passed to
> /usr/bin/ld.  After looking at /ompi/mpi/f90/Makefile, I see
> that FCFLAGS shows up in link lines (“libmpi_f90_la_LINK” and
> “FCLINK”).  This direction seems to come from Makefile.in.
> 
> If I remove these FCFLAGS references from the Makefile, I am able to
> complete the build and install of OpenMPI, and it seems to correctly
> support my existing software.
> 
> So,  now for my question:
> 
> Should FCFLAGS show up on these links lines and, if so, how would I get
> 64-bit objects?
> 
> Thanks,
> 
> Brian Price
> 
>  
> 
> 
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users



[OMPI users] Creating 64-bit objects?

2010-11-09 Thread Price, Brian M (N-KCI)
OpenMPI version: 1.3.3 & 1.4.3
Platform: IBM P5
Issue:  I want OpenMPI to support some existing 64-bit FORTRAN software, but I 
can't seem to get 64-bit objects from OpenMPI without some modification to the 
Makefile in ompi/mpi/f90.
I can configure, build, and install just fine with the following compilers:

-  CC = xlC_r

-  CXX = xlC_r

-  F77 = xlf95_r

-  FC = xlf95_r
But, this configuration produces 32-bit objects for all languages.
So, to produce 64-bit objects for all languages, I supply the following flags:

-  CFLAGS = -q64

-  CXXFLAGS = -q64

-  FFLAGS = -q64

-  FCFLAGS = -q64
This configuration results in the following error during the build (more 
specifically, link) phase:

-  When creating libmpi_f90.la in ompi/mpi/f90

-  COMMANDS:

o   /bin/sh ../../../libtool  --mode=link xlf95_r -I../../../ompi/include 
-I../../../ompi/include -I. -I. -I../../../ompi/mpi/f90  -q64 -version-info 
0:1:0  -export-dynamic  -o libmpi_f90.la -rpath /lib mpi.lo 
mpi_sizeof.lo mpi_comm_spawn_multiple_f90.lo mpi_testall_f90.lo 
mpi_testsome_f90.lo mpi_waitall_f90.lo mpi_waitsome_f90.lo mpi_wtick_f90.lo 
mpi_wtime_f90.lo  ../../../ompi/libmpi.la -lnsl -lutil

o   libtool: link: /usr/bin/ld -m elf64ppc -shared  .libs/mpi.o 
.libs/mpi_sizeof.o .libs/mpi_comm_spawn_multiple_f90.o .libs/mpi_testall_f90.o 
.libs/mpi_testsome_f90.o .libs/mpi_waitall_f90.o .libs/mpi_waitsome_f90.o 
.libs/mpi_wtick_f90.o .libs/mpi_wtime_f90.lo  -L/orte/.libs 
-L/opal/.libs ../../../ompi/.libs/libmpi.so 
/orte/.libs/libopen-rte.so /opal/.libs/libopen-pal.so -ldl 
-lnsl -lutil  -q64  -soname libmpi_f90.so.0 -o .libs/libmpi_f90.so.0.0.1

-  OUTPUT:
/usr/bin/ld: unrecognized option '-q64'
/usr/bin/ld: use the --help option for usage information
make[4]: *** [libmpi_f90.la] Error 1
make[4]: Leaving directory `/ompi/mpi/f90`
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/ompi/mpi/f90`
make[2]: *** [all] Error 2
make[2]: Leaving directory `/ompi/mpi/f90`
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/ompi`
make: *** [all-recursive] Error 1

The -q64 option, while valid for the xlf95_r compiler, is not a valid option 
for /usr/bin/ld.  So, I'm wondering why this option got passed to /usr/bin/ld.  
After looking at /ompi/mpi/f90/Makefile, I see that FCFLAGS shows up in 
link lines ("libmpi_f90_la_LINK" and "FCLINK").  This direction seems to come 
from Makefile.in.
If I remove these FCFLAGS references from the Makefile, I am able to complete 
the build and install of OpenMPI, and it seems to correctly support my existing 
software.
So,  now for my question:
Should FCFLAGS show up on these links lines and, if so, how would I get 64-bit 
objects?
Thanks,
Brian Price