Hi,

I attempted to build OpenMPI-1.2.5 on a POWER5/AIX 5.3 platform.
I know this isn't officially supported, but I report the bug anyway
(otherwise it'll never get chance to be supported, right ?).

I started configure with

./configure CC="xlc -q64" CXX="xlc++ -q64" F77="xlf -q64" FC="xlf90 -q64" 
NM="nm -X64" AR="ar -X64" --disable-shared --enable-static 
--prefix=/usr/local/openmpi

to build with IBM XL compilers in 64 bit mode (-q64).

Configure completed to the end, however it printed the following status 
about atomic operations in the config.log file:

configure:26189: checking for pre-built assembly file
configure:26206: result: no (not in asm-data)
configure:26214: checking whether possible to generate assembly file
configure:26219: perl 
/vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/generate-asm.pl POWERPC64 
aix-.csect .text[PR]-.globl-:-.-\
L--0-0-0-1-0 /vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/base 
/vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/generated/atomic-local.\
s >conftest.out 2>&1
configure:26222: $? = 2
Could not open .text[PR]-.globl-:-.-L--0-0-0-1-0/POWERPC64.asm: No such 
file or directory
configure:26232: result: failed
configure:26234: WARNING: Could not build atomic operations assembly file.
configure:26236: WARNING: There will be no atomic operations for this 
build.
configure:26254: checking for atomic assembly filename
configure:26257: result: none

Thus configure fails to find the 
./opal/asm/generated/atomic-powerpc64-aix.s file
which is definitely present. In the end OpenMPI fails to build because of 
missing
atomic functions in the opal library.

I inspected the configure script for the test in "configure:26206: result: 
no (not in asm-data)"
which is obviously failing:

    if grep "$ompi_cv_asm_arch" "${top_ompi_srcdir}/opal/asm/asm-data.txt" 
| $FGREP "$ompi_cv_asm_format" >conftest.out\
 2>&1 ; then
        ompi_cv_asm_file="`cut -f3 conftest.out`"
        if test ! "$ompi_cv_asm_file" = "" ; then
            ompi_cv_asm_file="atomic-${ompi_cv_asm_file}.s"
            if test -f 
"${top_ompi_srcdir}/opal/asm/generated/${ompi_cv_asm_file}" ; then
                { echo "$as_me:$LINENO: result: yes ($ompi_cv_asm_file)" 
>&5
echo "${ECHO_T}yes ($ompi_cv_asm_file)" >&6; }
            else
                { echo "$as_me:$LINENO: result: no ($ompi_cv_asm_file not 
found)" >&5
echo "${ECHO_T}no ($ompi_cv_asm_file not found)" >&6; }
                ompi_cv_asm_file=""
            fi
        fi
    else
        { echo "$as_me:$LINENO: result: no (not in asm-data)" >&5
echo "${ECHO_T}no (not in asm-data)" >&6; }
    fi

ompi_cv_asm_arch has the value "POWERPC64".
The value determined earlier for ompi_cv_asm_format = "aix-.csect 
.text[PR]-.globl-:-.-L--0-0-0-1-0".
This asm_format is not found in the standard asm-data.txt file which reads 
for POWERPC64:

aix-.csect .text[PR]-.globl-:-.-L--0-1-0-1-0

By a single 1 that stands for align_log.

Then configure continues to make an attempt to generate an assembly file 
on the fly,
This test is buggy in a single line:

ompi_try='$PERL $top_ompi_srcdir/opal/asm/generate-asm.pl 
$ompi_cv_asm_arch $ompi_cv_asm_format $top_ompi_srcdir/opal/asm/base 
$top_o\
mpi_builddir/opal/asm/generated/$ompi_cv_asm_file >conftest.out 2>&1'

where $ompi_cv_asm_format should be enclosed in double quotes "",
because the format string may contain a blanks (at least in the AIX case 
it does),
Hence all tests fail, no atomic asm source code is generated and the whole 
build fails.

1. Could you please fix the bug above in the configure script ?

2. Could someone explain, why configure might determine a different 
ompi_cv_asm_format
    than stated in the asm-data.txt database ?
    Maybe the meaning of the cryptic assmebler format string is explained 
somewhere.
    If so, could someone point me to the explanation ?

Viele Grüsse / Best regards,
Mathias Pütz

Deep Computing - Strategic Growth Business
IBM Systems & Technology Group

e-mail:  mpu...@de.ibm.com
mobile: + 49-(0)160-7120602
fax:         + 49-(0)6131-84-6660

Anschrift:
  IBM Deutschland GmbH
  Department B513
  Hechtsheimer Str. 2 / Building 12
  55131 Mainz
  Germany

IBM Deutschland GmbH
Vorsitzender des Aufsichtsrats: Hans Ulrich Maerki
Geschäftsführung: Martin Jetter (Vorsitzender), Christian Diedrich, 
Christoph Grandpierre, Matthias Hartmann, Thomas Fell, Michael Diemer
Sitz der Gesellschaft: Stuttgart
Registergericht: Amtsgericht Stuttgart, HRB 14562 WEEE-Reg.-Nr. DE 
99369940

Reply via email to