spack / spack

A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
https://spack.io
Other
4.29k stars 2.27k forks source link

Installation issue: diffutils%intel #26891

Open dmentock opened 3 years ago

dmentock commented 3 years ago

Steps to reproduce

spack install intel-oneapi-compilers
spack compiler add `spack location -i intel-oneapi-compilers`/compiler/latest/linux/bin/intel64
spack compiler add `spack location -i intel-oneapi-compilers`/compiler/latest/linux/bin

spack install z3%intel

Error message

==> Error: ProcessError: Command exited with status 2:
    'make' '-j16'

3 errors found in build log:
     2966    cd /tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build/src && /nethome/storage/raid5/<username>/test/spack/opt/spack/linux-ubuntu20.04-sandybridge/intel-2021.3.0/cmake-3.21.3-fcangr4lwhu32zyp7xf4ketdgvzirlhe/bin/cmake -E cmake_link_script CMakeFiles/libz3.dir/link.txt --verbose=1
     2967    /nethome/storage/raid5/<username>/test/spack/lib/spack/env/intel/icpc -fPIC -O2 -g -DNDEBUG -shared -Wl,-soname,libz3.so.4.8 -o ../libz3.so.4.8.9.0 @CMakeFiles/libz3.dir/objects1.rsp  -Wl,-rpath,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -liomp5 -pthread
     2968    [100%] Linking CXX executable ../../z3
     2969    cd /tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build/src/shell && /nethome/storage/raid5/<username>/test/spack/opt/spack/linux-ubuntu20.04-sandybridge/intel-2021.3.0/cmake-3.21.3-fcangr4lwhu32zyp7xf4ketdgvzirlhe/bin/cmake -E cmake_link_script CMakeFiles/shell.dir/link.txt --verbose=1
     2970    /nethome/storage/raid5/<username>/test/spack/lib/spack/env/intel/icpc -O2 -g -DNDEBUG @CMakeFiles/shell.dir/objects1.rsp -o ../../z3 -Wl,-rpath,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -liomp5 -pthread
     2971    ld: ../math/lp/CMakeFiles/lp.dir/nla_common.cpp.o: in function `std::ostream& nla::common::print_product<svector<unsigned int, unsigned int> >(svector<unsigned int, unsigned int> const&, std::ostream&) const':
  >> 2972    /tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/src/math/lp/nla_common.cpp:37: undefined reference to `std::ostream& nla::core::print_product<svector<unsigned int, unsigned int> >(svector<unsigned int, unsigned int> const&, std::ostream&) const'
     2973    cd /tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build/src && /nethome/storage/raid5/<username>/test/spack/opt/spack/linux-ubuntu20.04-sandybridge/intel-2021.3.0/cmake-3.21.3-fcangr4lwhu32zyp7xf4ketdgvzirlhe/bin/cmake -Ecmake_symlink_library ../libz3.so.4.8.9.0 ../libz3.so.4.8 ../libz3.so
     2974    make[2]: Leaving directory '/tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build'
     2975    [100%] Built target libz3
  >> 2976    make[2]: *** [src/shell/CMakeFiles/shell.dir/build.make:1758: z3]
             Error 1
     2977    make[2]: Leaving directory '/tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build'
  >> 2978    make[1]: *** [CMakeFiles/Makefile2:4372: src/shell/CMakeFiles/shel
             l.dir/all] Error 2
     2979    make[1]: Leaving directory '/tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprtsw/spack-src/build'
     2980    make: *** [Makefile:139: all] 
             Error 2

See build log for details:
  /tmp/<username>/spack-stage/spack-stage-z3-4.8.9-4slxtloe4alyy3ahz56bmpwaoprprt                                                                                                                                                             sw/spack-build-out.txt

Information on your system

General information

bollig commented 2 years ago

Any ideas how to move past this?

alalazo commented 2 years ago

@rscohn2 Do you have time to take a brief look at this?

bollig commented 2 years ago

I was able to sidestep the issue with --reuse:

spack install z3%gcc
spack install --reuse relion~cuda%intel ^z3%gcc

Still interested in a cleaner solution though.

rscohn2 commented 2 years ago

I looked at the log files. I don't think it is a problem in spack or the spack packages. It is possible that the problem is in the intel compiler, but more often this kind of bug is a compiler-dependent bug in the application.

rscohn2 commented 2 years ago

If you are able to move to the new oneapi compilers, it will build ok:

spack install z3%oneapi
bollig commented 2 years ago

Interesting. My use of %intel is from Intel-oneapi-compilers. I’ll have to check whether %oneapi could cover my whole usecase. This seems to be narrow in scope.

Cheers, -E

On Tue, Nov 16, 2021 at 2:19 PM Robert Cohn @.***> wrote:

If you are able to move to the new oneapi compilers, it will build ok:

spack install z3%oneapi

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/spack/spack/issues/26891#issuecomment-970646201, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABNWQXV476WVQWKVQHRSYLUMK4GBANCNFSM5GQCFEYQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- -Evan Bollig @. @.

rscohn2 commented 2 years ago

Yes, switching compilers on a complex application can be difficult. Intel releases icc (%intel) and icx (%oneapi) in the same package. Most improvements go into icx and eventually intel will stop releasing icc updates.