#18326: mpir-2.7.0-alpha12 fails to configure on SLES11SP1 power7 (ppc64) with 
gcc
5.1
----------------------------------+----------------------------
   Reporter:  fbissey             |            Owner:
       Type:  defect              |           Status:  new
   Priority:  major               |        Milestone:  sage-6.7
  Component:  packages: standard  |         Keywords:
  Merged in:                      |          Authors:
  Reviewers:                      |  Report Upstream:  N/A
Work issues:                      |           Branch:
     Commit:                      |     Dependencies:
   Stopgaps:                      |
----------------------------------+----------------------------
 Just as it says in the title. mpir configuration fails, this was done with
 sage 6.7.beta3's tarball. It is not a C++11 problem, it seems to be C11
 problem, possibly ppc64 specific.
 {{{
 /hpc/scratch/frb15/sandbox/sage-6.7.beta3/build/pipestatus "sage-spkg -f
 mpir-2.7.0-alpha12 2>&1" "tee -a
 /hpc/scratch/frb15/sandbox/sage-6.7.beta3/logs/pkgs/mpir-2.7.0-alpha12.log"
 Found local metadata for mpir-2.7.0-alpha12
 Found local sources at
 /hpc/scratch/frb15/sandbox/sage-6.7.beta3/upstream/mpir-2.7.0-alpha12.tar.bz2
 Checksum: 6a46071d007a5284dbb67c4db70306deeb3e6513 vs
 6a46071d007a5284dbb67c4db70306deeb3e6513
 mpir-2.7.0-alpha12
 ====================================================
 Setting up build directory for mpir-2.7.0-alpha12
 mv: cannot stat `mpir-2.7.0-alpha12*': No such file or directory
 Finished set up
 ****************************************************
 Host system:
 Linux p2n14-c 2.6.32.54-0.3-ppc64 #1 SMP 2012-01-27 17:38:56 +0100 ppc64
 ppc64 ppc64 GNU/Linux
 ****************************************************
 C compiler: gcc
 C compiler version:
 Using built-in specs.
 COLLECT_GCC=gcc
 
COLLECT_LTO_WRAPPER=/hpc/home/projects/packages/local.linux.ppc/pkg/gcc/5.1.0/bin/../libexec/gcc/powerpc64-linux/5.1.0
 /lto-wrapper
 Target: powerpc64-linux
 Configured with: ../configure --build=powerpc64-linux
 --host=powerpc64-linux --target=powerpc64-linux --with-cpu=default64
 --prefix=/usr/local/pkg/gcc/5.1.0 --with-long-double-128 --enable-
 secureplt --enable-threads=posix --enable-languages=c,c++,fortran
 --enable-__cxa_atexit --enable-shared --enable-checking=release --enable-
 lto --enable-gnu-indirect-function --without-libelf --with-cpu=power7
 --with-tune=power7 --with-build-time-tools=/opt/at7.0/powerpc64-linux/bin
 Thread model: posix
 gcc version 5.1.0 (GCC)
 ****************************************************
 Applying patches to upstream sources...
 patching file gmp-h.in
 patching file mpirxx.h
 patching file mpn/x86/fat/fat.c
 Building a 64-bit version of MPIR.
 Building MPIR with the C++ interface and (also) static libraries.
 ------------------------------------------------------------------------
 Configuring MPIR with empty CFLAGS to determine the defaults:
 checking build system type... power7-unknown-linux-gnu
 checking host system type... power7-unknown-linux-gnu
 checking for a BSD-compatible install... /usr/bin/install -c
 checking whether build environment is sane... yes
 checking for a thread-safe mkdir -p... /bin/mkdir -p
 checking for gawk... gawk
 checking whether make sets $(MAKE)... yes
 checking whether to enable maintainer-specific portions of Makefiles... no
 checking ABI=mode64
 checking compiler gcc -m64  ... no, long long reliability test 1
 checking compiler gcc  ... no, long long reliability test 1
 configure: error: could not find a working compiler, see config.log for
 details
 Error configuring MPIR (with CFLAGS unset).
 Consult
 
/hpc/scratch/frb15/sandbox/sage-6.7.beta3/local/var/tmp/sage/build/mpir-2.7.0-alpha12/src/config.log
 for for details.
 }}}
 Inspecting `config.log` the code not compiling is
 {{{
 /* The following provokes a segfault in the compiler on powerpc-apple-
 darwin.
    Extracted from tests/mpn/t-iord_u.c.  Causes Apple's gcc 3.3 build 1640
 and
    1666 to segfault with, e.g., -O2 -mpowerpc64.  */

 #if defined(__GNUC__) && !defined(__clang__)
 typedef unsigned long long t1;typedef t1*t2;
 __inline__ t1 e(t2 rp,t2 up,int n,t1 v0)
 {t1 c,x,r;int i;if(v0){c=1;for(i=1;i<n;i++){x=up[i];r=x+1;rp[i]=r;}}return
 c;}
 f(){static const struct{t1 n;t1 src[9];t1 want[9];}d[]={{1,{0},{1}},};t1
 got[9];int i;
 
for(i=0;i<1;i++){if(e(got,got,9,d[i].n)==0)h();g(i,d[i].src,d[i].n,got,d[i].want,9);if(d[i].n)h();}}
 h(){}g(){}
 #else
 int dummy;
 #endif

 int main () { return 0; }
 }}}
 which give rise to the following warnings and errors
 {{{
 gcc conftest.c
 conftest.c:9:1: warning: return type defaults to 'int' [-Wimplicit-int]
  f(){static const struct{t1 n;t1 src[9];t1 want[9];}d[]={{1,{0},{1}},};t1
 got[9];int i;
  ^
 conftest.c: In function 'f':
 conftest.c:10:44: warning: implicit declaration of function 'h'
 [-Wimplicit-function-declaration]
 
for(i=0;i<1;i++){if(e(got,got,9,d[i].n)==0)h();g(i,d[i].src,d[i].n,got,d[i].want,9);if(d[i].n)h();}}
                                             ^
 conftest.c:10:48: warning: implicit declaration of function 'g'
 [-Wimplicit-function-declaration]
 
for(i=0;i<1;i++){if(e(got,got,9,d[i].n)==0)h();g(i,d[i].src,d[i].n,got,d[i].want,9);if(d[i].n)h();}}
                                                 ^
 conftest.c: At top level:
 conftest.c:11:1: warning: return type defaults to 'int' [-Wimplicit-int]
  h(){}g(){}
  ^
 conftest.c:11:6: warning: return type defaults to 'int' [-Wimplicit-int]
  h(){}g(){}
       ^
 /tmp/cc80AtKw.o: In function `f':
 conftest.c:(.text+0x50): undefined reference to `e'
 collect2: error: ld returned 1 exit status
 }}}
 I only had to to use `-std=gnu90` to compile that code `-std=gnu99` and
 the default both gave the above errors.

--
Ticket URL: <http://trac.sagemath.org/ticket/18326>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to