cp2k / dbcsr

DBCSR: Distributed Block Compressed Sparse Row matrix library
https://cp2k.github.io/dbcsr/
GNU General Public License v2.0
135 stars 46 forks source link

Configure fails on macOS 10.7 and 10.10–10.13 due to Test f2008-norm2 failure #646

Closed barracuda156 closed 1 year ago

barracuda156 commented 1 year ago

Configure fails on select macOS versions: https://ports.macports.org/port/dbcsr/details

-- Found MPI_Fortran: /opt/local/bin/mpif90-mpich-mp (found version "4.0") 
-- Found MPI: TRUE (found version "4.0") found components: C CXX Fortran 
-- Performing Test f2008-norm2
-- Performing Test f2008-norm2 - Failed
CMake Error at cmake/CheckCompilerSupport.cmake:16 (message):
  Your compiler does not support all required F2008 features

Log from 10.13 here: https://build.macports.org/builders/ports-10.13_x86_64-builder/builds/175963/steps/install-port/logs/stdio

alazzaro commented 1 year ago

Could you check the cmake log to see what it is failing in the test? I see the following path:

Error: Failed to configure dbcsr: consult /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_math_dbcsr/dbcsr/work/build/CMakeFiles/CMakeError.log
Error: Failed to configure dbcsr: configure failure: command execution failed
DEBUG: Error code: NONE
DEBUG: Backtrace: configure failure: command execution failed
    while executing
"$procedure $targetname"
Error: See /opt/local/var/macports/logs/_opt_bblocal_var_buildworker_ports_build_ports_math_dbcsr/dbcsr/main.log for details.

It seems the error is somewhere else in compiling the test (I see you are using gfortran 12.2, which is OK for that test).

barracuda156 commented 1 year ago

Could you check the cmake log to see what it is failing in the test? I see the following path:

Error: Failed to configure dbcsr: consult /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_math_dbcsr/dbcsr/work/build/CMakeFiles/CMakeError.log
Error: Failed to configure dbcsr: configure failure: command execution failed
DEBUG: Error code: NONE
DEBUG: Backtrace: configure failure: command execution failed
    while executing
"$procedure $targetname"
Error: See /opt/local/var/macports/logs/_opt_bblocal_var_buildworker_ports_build_ports_math_dbcsr/dbcsr/main.log for details.

It seems the error is somewhere else in compiling the test (I see you are using gfortran 12.2, which is OK for that test).

@alazzaro I think we have no access to detailed logs from build bots, but I will test on 10.8.5 locally, once I am back to needed hardware.

dev-zero commented 1 year ago

@barracuda156 can you try passing --debug-trycompile to the CMake invocation to get more output inlined in the default CMake output? My guess would be that somehow the compiler flags we need (see cmake/CompilerConfiguration.cmake) are somehow not present.

alazzaro commented 1 year ago

Any update on this issue?

barracuda156 commented 1 year ago

Any update on this issue?

Thank you for reminding. Looking at the bots, it seems almost everything was fixed with the recent update I made to the port: https://ports.macports.org/port/dbcsr/details (10.7 fails with unsupported assembler insn, I need to blacklist its Xcode clang.)

I think we can close the issue. The problem was due to some incompatibility of args passed to CMake by Macports and recognized by dbcsr configure.