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 <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
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users

Reply via email to