Menu

#206 configure/build fails on Solaris

Both
closed-fixed
5
2013-10-03
2012-07-18
No

The find --maxdepth option is not POSIX and does not exist on Solaris.

(sage-sh) vbraun@solaris:build-test$ find /home/vbraun/opt/mark/sage-5.1.beta3/local/bin -maxdepth 1 -name gcc
find: bad option -maxdepth
find: [-H | -L] path-list predicate-list

This causes configure to fail in

cd /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/build-test ; ./xprobe_comp -v 0 -o atlconf.txt -O 2 -A 40 -Si nof77 0 -V 0 -Fa ic '-fPIC' -C sm 'gcc' -Fa sm '-fPIC' -C dm 'gcc' -Fa dm '-fPIC' -C sk 'gcc' -Fa sk '-fPIC' -C dk 'gcc' -Fa dk '-fPIC' -C xc 'gcc' -Fa xc '-fPIC' -Fa gc '-fPIC' -C if 'sage_fortran' -Fa if '-fPIC' -b 32 -d b /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/build-test > config1.out
Assertion failed: gccs[i], file /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/build-test/../src//CONFIG/src/probe_comp.c, line 1560
Abort - core dumped
make[1]: *** [atlas_run] Error 134

As I wrote on the mailinglist, it is hopeless to NOT specify the precise compiler since the file system is too slow to fully search.

Discussion

  • Volker Braun

    Volker Braun - 2012-07-18

    Setting the fqn with -C agc /path/to/gcc -C if /path/to/gfortran and replacing the test "[ -e ..." by "[ -f ...]" in configure gets me at leasts into the compile phase. The compilation dies here:

    [...]
    /home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc -c -DL2SIZE=4194304 -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3
    .10.0/ATLAS-build/../src//include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_SunOS -DATL_ARCH_USIII -DAT
    L_CPUMHZ=1280 -DSUN_HR -DATL_GAS_SPARC -m32 -DATL_FULL_LAPACK -DATL_NCPU=2 -mcpu=ultrasparc3 -mtune=ultrasparc3 -O -fPIC -m32 /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//tune
    /sysinfo/GetSysSum.c
    /home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc -DL2SIZE=4194304 -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10
    .0/ATLAS-build/../src//include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_SunOS -DATL_ARCH_USIII -DATL_CPUMHZ=1280 -DSUN_HR -DATL_GAS_SPARC -m32 -DATL_FULL_LAPACK -DATL_NCPU=2 -mcpu=ultrasparc3 -mtune=ultrasparc3 -O -fPIC -m32 -o xsyssum GetSysSum.o
    /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/tune/sysinfo/xsyssum s /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include/atlas_ssysinfo.h

    Read in L1 Cache size as = 64KB.
    make[5]: Entering directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/tune/sysinfo'
    make[5]: Warning: File `Make.inc' has modification time 1.3e+02 s in the future
    /home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc -DL2SIZE=4194304 -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//include -I/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_SunOS -DATL_ARCH_USIII -DATL_CPUMHZ=1280 -DSUN_HR -DATL_GAS_SPARC -m32 -DATL_FULL_LAPACK -DATL_NCPU=2 -mcpu=ultrasparc3 -mtune=ultrasparc3 -O -fPIC -m32 -o xmasrch /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//tune/sysinfo/masrch.c
    ./xmasrch -p s -o res/sMULADD
    make[6]: Warning: File `Make.inc' has modification time 1.3e+02 s in the future
    make[6]: *** [xsma] Error 7
    Assertion failed: !system(ln), file /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//tune/sysinfo/masrch.c, line 108
    Finding how many mflops required to get .025 second timings:
    make[5]: *** [RunMADef] Abort (core dumped)
    make[5]: Leaving directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/tune/sysinfo'
    Assertion failed: system(ln) == 0, file /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/../src//tune/sysinfo/GetSysSum.c, line 92
    make[4]: *** [/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include/atlas_ssysinfo.h] Abort (core dumped)
    make[4]: Leaving directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/tune/sysinfo'
    make[3]: *** [/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/include/atlas_ssysinfo.h] Error 2
    make[3]: Leaving directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/src/auxil'
    make[2]: *** [IStage1] Error 2
    make[2]: Leaving directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/bin'
    ERROR 621 DURING CACHESIZE SEARCH!!. CHECK INSTALL_LOG/Stage1.log FOR DETAILS.
    make[2]: Entering directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build/bin'
    make[2]: Warning: File `Make.inc' has modification time 1.3e+02 s in the future
    cd /home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build ; make -j1 error_report
    make[3]: Entering directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build'
    make[3]: Warning: File `Makefile' has modification time 1.1e+02 s in the future
    make -j1 -f Make.top error_report
    make[4]: Entering directory `/home/vbraun/opt/mark/sage-5.1.beta3/spkg/build/atlas-3.10.0/ATLAS-build'
    make[4]: Warning: File `Make.inc' has modification time 1.3e+02 s in the future
    uname -a 2>&1 >> bin/INSTALL_LOG/ERROR.LOG
    /home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc -v 2>&1 >> bin/INSTALL_LOG/ERROR.LOG
    Using built-in specs.
    COLLECT_GCC=/home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc
    COLLECT_LTO_WRAPPER=/home/vbraun/opt/mark/sage-5.1.beta3/local/libexec/gcc/sparc-sun-solaris2.10/4.6.3/lto-wrapper
    Target: sparc-sun-solaris2.10
    Configured with: ../src/configure --prefix=/home/vbraun/opt/mark/sage-5.1.beta3/local --with-local-prefix=/home/vbraun/opt/mark/sage-5.1.beta3/local --with-gmp=/home/vbraun/opt/mark/sage-5.1.beta3/local --with-mpfr=/home/vbraun/opt/mark/sage-5.1.beta3/local --with-mpc=/home/vbraun/opt/mark/sage-5.1.beta3/local --with-system-zlib --disable-multilib
    Thread model: posix
    gcc version 4.6.3 (GCC)
    /home/vbraun/opt/mark/sage-5.1.beta3/local/bin/gcc -V 2>&1 >> bin/INSTALL_LOG/ERROR.LOG
    gcc: error: unrecognized option '-V'
    gcc: fatal error: no input files
    compilation terminated.

    See also http://boxen.math.washington.edu/home/vbraun/www/error_USIII32.tar.bz2

     
  • Volker Braun

    Volker Braun - 2012-07-18
    • summary: configure fails on Solaris --> configure/build fails on Solaris
     
  • Volker Braun

    Volker Braun - 2012-07-19

    I tracked this down to main() in tune/sysinfo/matime.c. This should return 0, but actually does not contain an exit code. In C99 this would necessarily default to 0, but in C89 a missing return means that the exit status is undefined and implementation dependent. In the case at hand and with my compiler, the return value happens to be 7 on SPARC Solaris.

     
  • Volker Braun

    Volker Braun - 2012-07-19

    Fix for the missing return statement

     
  • Volker Braun

    Volker Braun - 2012-07-19

    Use test -f instead of test -e for Solaris

     
  • Volker Braun

    Volker Braun - 2012-07-19

    I managed to build atlas-3.10.0 with the two patches and with specifying the full path to compilers.

     
  • R. Clint Whaley

    R. Clint Whaley - 2012-10-10
    • assigned_to: nobody --> rwhaley
    • labels: 320139 -->
    • status: open --> open-accepted
     
  • R. Clint Whaley

    R. Clint Whaley - 2012-10-10

    OK, I had errataed the no-return error a while back. I've added an errata entry on the solaris test problem as well. I have also made both changes in the developer & stable basefiles.

     
  • R. Clint Whaley

    R. Clint Whaley - 2012-10-10
    • milestone: --> Both
    • labels: --> configure bug
    • status: open-accepted --> open-fixed
     
  • R. Clint Whaley

    R. Clint Whaley - 2012-10-10

    OK, I've fixed the everything except the maxdepth stuff, which shouldn't be a problem now if you specify the exact compiler.

     
  • R. Clint Whaley

    R. Clint Whaley - 2013-10-03
    • status: open-fixed --> closed-fixed
     
  • R. Clint Whaley

    R. Clint Whaley - 2013-10-03

    Fixed by 3.10.1

     

Log in to post a comment.