Thanks, Nysal.
The only problem I’m having now is connecting a libtool version
(e.g. 2.2.8) with an OpenMPI version. I’m sorry if it’s a silly question, but
can you tell me in which version of OpenMPI this problem will go away?
Thanks, again.
Brian
From: users-bounces@open-mpi.org
[mailto:users-bounces@open-mpi.org] On Behalf Of Nysal Jan
Sent: Wednesday, November 10, 2010 12:19 AM
To: Open MPI Users
Subject: EXTERNAL: Re: [OMPI users] Creating 64-bit objects?
Hi Brian,
This problem was first reported by Paul H. Hargrove in the developer mailing
list. It is a bug in libtool and has been fixed in the latest release (2.2.8).
More details are available here - http://www.open-mpi.org/community/lists/devel/2010/10/8606.php
Regards
--Nysal
On Wed, Nov 10, 2010 at 1:04 AM, Price, Brian M (N-KCI) <brian.m.price@lmco.com> 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 <prefix>/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<topdir>/orte/.libs
-L<topdir>/opal/.libs ../../../ompi/.libs/libmpi.so
<topdir>/orte/.libs/libopen-rte.so
<topdir>/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 `<topdir>/ompi/mpi/f90`
make[3]:
*** [all-recursive] Error 1
make[3]:
Leaving directory `<topdir>/ompi/mpi/f90`
make[2]:
*** [all] Error 2
make[2]:
Leaving directory `<topdir>/ompi/mpi/f90`
make[1]:
*** [all-recursive] Error 1
make[1]:
Leaving directory `<topdir>/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 <topdir>/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
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users