I encountered this problem while building DFTB+ with libnegf and the Intel oneAPI classic compilers (ifort
, icc
).
> ifort -V
Intel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.1 Build 20201112_000000
Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
> cmake --version
cmake version 3.19.4
CMake suite maintained and supported by Kitware (kitware.com/cmake)
> export FC=ifort CC=icc FFLAGS="-g -warn all -stand f08 -check -diag-error-limit 1 -traceback"
> cmake -B _build_debug -G Ninja -DCMAKE_BUILD_TYPE=Debug
> ninja -C _build_debug
ninja: Entering directory `_build_debug'
...
[134/143] Building Fortran object src/CMakeFiles/negf.dir/complexbands.f90.o
FAILED: src/CMakeFiles/negf.dir/complexbands.f90.o src/include/complexbands.mod
/opt/intel/oneapi/compiler/2021.1.1/linux/bin/intel64/ifort -Isrc -Iext_system/include -Isrc/include -g -warn all -stand f08 -check -diag-error-limit 1 -traceback -g -module src/include -c src/CMakeFiles/negf.dir/complexbands.f90-pp.f90 -o src/CMakeFiles/negf.dir/complexbands.f90.o
src/complexbands.f90(278): warning #8889: Explicit declaration of the EXTERNAL attribute is required. [ZGGEV]
call zggev(JOBVL,JOBVR,Sdim, TA, Sdim, TB, Sdim, Ad, Bd, &
---------^
src/complexbands.f90(286): warning #8889: Explicit declaration of the EXTERNAL attribute is required. [ZGGEV]
call zggev(JOBVL,JOBVR,Sdim, TA, Sdim, TB, Sdim, Ad, Bd, &
---------^
src/complexbands.f90(439): warning #8889: Explicit declaration of the EXTERNAL attribute is required. [ZHEGV]
call ZHEGV(1,JOBV,'L',PLdim,HH,PLdim,SS,PLdim,&
---------^
src/complexbands.f90(209): remark #7712: This variable has not been used. [E]
subroutine complex_k(E,PLdim,Z11,Z12,kz,Z21,Cl,Cr,vf)
-----------------------^
src/complexbands.f90(389): catastrophic error: **Internal compiler error: internal abort** Please report this error along with the circumstances in which it occurred in a Software Problem Report. Note: File and line given may not be explicit cause of this error.
compilation aborted for src/CMakeFiles/negf.dir/complexbands.f90-pp.f90 (code 1)
Seems to be an issue with the Intel compiler, which is not necessarily a problem in libnegf, therefore I just opening this issue here to document the compiler failure.