Questions regarding the compilation of VASP on various platforms: hardware, compilers and libraries, etc.
Moderators: Global Moderator, Moderator
-
aqteish
- Newbie

- Posts: 4
- Joined: Tue May 11, 2021 8:34 am
#1
Post
by aqteish » Sun Feb 23, 2025 9:40 pm
Hello
I'm trying to compile VASP 6.3.2 with make.include file provided end of the file. We chose makefile.include.nvhpc.
The following libraries are configured in our environment. Could you please help!?
Code: Select all
nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Fri_Jan__6_16:45:21_PST_2023
Cuda compilation tools, release 12.0, V12.0.140
Build cuda_12.0.r12.0/compiler.32267302_0
ifort --version
ifort (IFORT) 19.0.5.281 20190815
Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
gfortran --version
GNU Fortran (Ubuntu 9.5.0-6ubuntu2) 9.5.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
gcc --version
gcc (Ubuntu 9.5.0-6ubuntu2) 9.5.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
nvfortran -V
nvfortran 25.1-0 64-bit target on x86-64 Linux -tp broadwell
NVIDIA Compilers and Tools
Copyright (c) 2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
fftw-wisdom --version
fftw-wisdom tool for FFTW version 3.3.10.
Copyright (c) 2003, 2007-14 Matteo Frigo
Copyright (c) 2003, 2007-14 Massachusetts Institute of Technology
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Code: Select all
nvidia-smi
Sun Feb 23 21:36:07 2025
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.230.02 Driver Version: 535.230.02 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 Tesla P100-PCIE-16GB On | 00000000:04:00.0 Off | Off |
| N/A 30C P0 24W / 250W | 0MiB / 16384MiB | 0% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
| 1 Tesla P100-PCIE-16GB On | 00000000:82:00.0 Off | Off |
| N/A 28C P0 25W / 250W | 0MiB / 16384MiB | 0% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
| No running processes found |
+---------------------------------------------------------------------------------------+
Code: Select all
uname -a
Linux cm01 6.8.0-52-generic #53-Ubuntu SMP PREEMPT_DYNAMIC Sat Jan 11 00:06:25 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Code: Select all
CPP_OPTIONS = -DHOST=\"LinuxNV\" \
-DMPI -DMPI_BLOCK=8000 -Duse_collective \
-DscaLAPACK \
-DCACHE_SIZE=4000 \
-Davoidalloc \
-Dvasp6 \
-Duse_bse_te \
-Dtbdyn \
-Dqd_emulate \
-Dfock_dblbuf
CPP_OPTIONS += -D_OPENACC -DOPENACC -DOMP -DUSE_NVTX
CPP_OPTIONS += -DVASP_HYBRID_GPU
#CPP_OPTIONS += -DFFTW
LLIBS += -L/usr/local/lib -lfftw3
CPP = cpp #nvfortran -Mpreprocess -Mfree -Mextend -E $(CPP_OPTIONS) $*$(FUFFIX) > $*$(SUFFIX)
FC = nvfortran #mpif90
CC = nvc
CXX = nvc++
FCL = $(FC) #mpif90 -c++libs
F90FLAGS += -gpu=cc60,cuda12.2
F90FLAGS += -mp
F90FLAGS += -O2 -fast -Minfo=accel -acc
FREE = -Mfree
FFLAGS = -Mbackslash -Mlarge_arrays
OFLAG = -fast
DEBUG = -Mfree -O0 -traceback
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
# Redefine the standard list of O1 and O2 objects
SOURCE_O1 := pade_fit.o minimax_dependence.o
SOURCE_O2 := pead.o
# For what used to be vasp.5.lib
CPP_LIB = $(CPP)
FC_LIB = nvfortran
CC_LIB = nvc -w
CFLAGS_LIB = -O
FFLAGS_LIB = -O1 -Mfixed
FREE_LIB = $(FREE)
OBJECTS_LIB = linpack_double.o
# For the parser library
CXX_PARS = nvc++ --no_warnings
##
## Customize as of this point! Of course you may change the preceding
## part of this file as well if you like, but it should rarely be
## necessary ...
##
#
# When compiling on the target machine itself , change this to the
# relevant target when cross-compiling for another architecture
VASP_TARGET_CPU ?= -tp host
FFLAGS += $(VASP_TARGET_CPU)
# Specify your NV HPC-SDK installation (mandatory)
#... first try to set it automatically
NVROOT =$(shell which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }')
# If the above fails, then NVROOT needs to be set manually
#NVHPC ?= /opt/nvidia/hpc_sdk
#NVVERSION = 21.11
#NVROOT = $(NVHPC)/Linux_x86_64/$(NVVERSION)
# Software emulation of quadruple precsion (mandatory)
QD ?= $(NVROOT)/compilers/extras/qd
LLIBS += -L$(QD)/lib -lqdmod -lqd
INCS += -I$(QD)/include/qd
# BLAS (mandatory)
BLAS = -lblas
# LAPACK (mandatory)
LAPACK = -llapack
# scaLAPACK (mandatory)
SCALAPACK = -Mscalapack
LLIBS += $(SCALAPACK) $(LAPACK) $(BLAS)
# FFTW (mandatory)
FFTW_ROOT ?= /usr/local
LLIBS += -L$(FFTW_ROOT)/lib -lfftw3
INCS += -I$(FFTW_ROOT)/include
# HDF5-support (optional but strongly recommended)
#CPP_OPTIONS+= -DVASP_HDF5
#HDF5_ROOT ?= /path/to/your/hdf5/installation
#LLIBS += -L$(HDF5_ROOT)/lib -lhdf5_fortran
#INCS += -I$(HDF5_ROOT)/include
# For the VASP-2-Wannier90 interface (optional)
#CPP_OPTIONS += -DVASP2WANNIER90
#WANNIER90_ROOT ?= /path/to/your/wannier90/installation
#LLIBS += -L$(WANNIER90_ROOT)/lib -lwannier
Last edited by
manuel_engel1 on Wed Feb 26, 2025 9:42 am, edited 1 time in total.
Reason: I put all terminal output and the makefile.include into code blocks to improve readability
-
manuel_engel1
- Global Moderator

- Posts: 212
- Joined: Mon May 08, 2023 4:08 pm
#2
Post
by manuel_engel1 » Wed Feb 26, 2025 9:48 am
Hello and welcome to the VASP forum,
I will try to help you with your compilation. Could you please provide more information on what the actual issue is. From the title, it seems that there is something going wrong with c2f_interface.f90. However, from the makefile.include alone, I am unable to draw any conclusions. Could you please upload the complete compiler log where the error occurs so that I can take a look at it? The most common issue when compiling is not linking to libraries correctly, causing some dependencies to be missing.
Manuel Engel
VASP developer
-
aqteish
- Newbie

- Posts: 4
- Joined: Tue May 11, 2021 8:34 am
#3
Post
by aqteish » Mon Mar 03, 2025 7:20 am
Hello
Thank you for your reply please find below the log
Code: Select all
cpp
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
cpp -DNGXhalf -DwNGXhalf
# 0 "<stdin>"
# 0 "<stdin>"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
awk -f makedeps.awk c2f_interface.f90 nccl2for.f90 simd.f90 base.f90 profiling.f90 string.f90 tutor.f90 version.f90 command_line.f90 vhdf5_base.f90 incar_reader.f90 reader_base.f90 openmp.f90 openacc_struct .f90 mpi.f90 mpi_shmem.f90 mathtools.f90 hamil_struct.f90 radial_struct.f90 pseudo_struct.f90 mgrid_struct.f90 wave_struct.f90 nl_struct.f90 mkpoints_struct.f90 poscar_struct.f90 afqmc_struct.f90 fock_glb.f 90 chi_glb.f90 smart_allocate.f90 xml.f90 extpot_glb.f90 constant.f90 ml_ff_c2f_interface.f90 ml_ff_prec.f90 ml_ff_constant.f90 ml_ff_taglist.f90 ml_ff_struct.f90 ml_ff_mpi_help.f90 ml_ff_mpi_shmem.f90 vdwf orcefield_glb.f90 jacobi.f90 main_mpi.f90 openacc.f90 scala.f90 asa.f90 lattice.f90 poscar.f90 ini.f90 mgrid.f90 ml_ff_error.f90 ml_ff_mpi.f90 ml_ff_helper.f90 ml_ff_logfile.f90 ml_ff_math.f90 ml_ff_iohandl e.f90 ml_ff_memory.f90 ml_ff_abinitio.f90 ml_ff_ff.f90 ml_ff_mlff.f90 setex_struct.f90 xclib.f90 vdw_nl.f90 xclib_grad.f90 setex.f90 radial.f90 pseudo.f90 gridq.f90 ebs.f90 symlib.f90 mkpoints.f90 random.f9 0 wave.f90 wave_mpi.f90 wave_high.f90 bext.f90 spinsym.f90 symmetry.f90 lattlib.f90 nonl.f90 nonlr.f90 nonl_high.f90 dfast.f90 choleski2.f90 mix.f90 hamil.f90 xcgrad.f90 xcspin.f90 potex1.f90 potex2.f90 con strmag.f90 cl_shift.f90 relativistic.f90 LDApU.f90 paw_base.f90 metagga.f90 egrad.f90 pawsym.f90 pawfock.f90 pawlhf.f90 diis.f90 rhfatm.f90 hyperfine.f90 fock_ace.f90 paw.f90 mkpoints_full.f90 charge.f90 Le bedev-Laikov.f90 stockholder.f90 dipol.f90 solvation.f90 scpc.f90 pot.f90 tet.f90 dos.f90 elf.f90 hamil_rot.f90 chain.f90 dyna.f90 fileio.f90 vhdf5.f90 sphpro.f90 us.f90 core_rel.f90 aedens.f90 wavpre.f90 w avpre_noio.f90 broyden.f90 dynbr.f90 reader.f90 writer.f90 xml_writer.f90 brent.f90 stufak.f90 opergrid.f90 stepver.f90 fast_aug.f90 fock_multipole.f90 fock.f90 fock_dbl.f90 fock_frc.f90 mkpoints_change.f90 subrot_cluster.f90 sym_grad.f90 mymath.f90 npt_dynamics.f90 subdftd3.f90 subdftd4.f90 internals.f90 dynconstr.f90 dimer_heyden.f90 dvvtrajectory.f90 vdwforcefield.f90 nmr.f90 pead.f90 k-proj.f90 subrot.f90 subrot_scf.f90 paircorrection.f90 rpa_force.f90 ml_reader.f90 ml_interface.f90 force.f90 pwlhf.f90 gw_model.f90 optreal.f90 steep.f90 rmm-diis.f90 davidson.f90 david_inner.f90 root_find.f90 lcao_bare.f90 l ocproj.f90 electron_common.f90 electron.f90 rot.f90 electron_all.f90 shm.f90 pardens.f90 optics.f90 constr_cell_relax.f90 stm.f90 finite_diff.f90 elpol.f90 hamil_lr.f90 rmm-diis_lr.f90 subrot_lr.f90 lr_help er.f90 hamil_lrf.f90 elinear_response.f90 ilinear_response.f90 linear_optics.f90 setlocalpp.f90 wannier.f90 electron_OEP.f90 electron_lhf.f90 twoelectron4o.f90 gauss_quad.f90 m_unirnk.f90 minimax_ini.f90 mi nimax_dependence.f90 minimax_functions1D.f90 minimax_functions2D.f90 minimax_struct.f90 minimax_varpro.f90 minimax.f90 umco.f90 mlwf.f90 ratpol.f90 pade_fit.f90 screened_2e.f90 wave_cacher.f90 crpa.f90 chi_ base.f90 wpot.f90 local_field.f90 ump2.f90 ump2kpar.f90 fcidump.f90 ump2no.f90 bse_te.f90 bse.f90 time_propagation.f90 acfdt.f90 afqmc.f90 rpax.f90 chi.f90 acfdt_GG.f90 dmft.f90 GG_base.f90 greens_orbital.f 90 lt_mp2.f90 rnd_orb_mp2.f90 greens_real_space.f90 chi_GG.f90 chi_super.f90 sydmat.f90 rmm-diis_mlr.f90 linear_response_NMR.f90 wannier_interpol.f90 wave_interpolate.f90 linear_response.f90 auger.f90 dmatr ix.f90 phonon.f90 wannier_mats.f90 elphon.f90 core_con_mat.f90 embed.f90 extpot.f90 rpa_high.f90 fftmpiw.f90 fftmpi_map.f90 fftw3d.f90 fft3dlib.f90 main.f90 > .depend
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
cpp -DNGXhalf -DwNGXhalf
awk: fatal: cannot open file `c2f_interface.f90' for reading: No such file or directory
make[2]: *** [makefile:152: depend] Error 2
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/ncl'
make[1]: *** [makefile:149: dependencies] Error 2
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/ncl'
make: *** [makefile:16: ncl] Error 2
make: *** Waiting for unfinished jobs....
# 0 "<stdin>"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
cpp -DNGXhalf -DwNGXhalf
# 0 "<stdin>"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
cpp -DNGXhalf -DwNGXhalf
# 0 "<stdin>"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "<stdin>"
awk -f makedeps.awk c2f_interface.f90 nccl2for.f90 simd.f90 base.f90 profiling.f90 string.f90 tutor.f90 version.f90 command_line.f90 vhdf5_base.f90 incar_reader.f90 reader_base.f90 openmp.f90 openacc_struct .f90 mpi.f90 mpi_shmem.f90 mathtools.f90 hamil_struct.f90 radial_struct.f90 pseudo_struct.f90 mgrid_struct.f90 wave_struct.f90 nl_struct.f90 mkpoints_struct.f90 poscar_struct.f90 afqmc_struct.f90 fock_glb.f 90 chi_glb.f90 smart_allocate.f90 xml.f90 extpot_glb.f90 constant.f90 ml_ff_c2f_interface.f90 ml_ff_prec.f90 ml_ff_constant.f90 ml_ff_taglist.f90 ml_ff_struct.f90 ml_ff_mpi_help.f90 ml_ff_mpi_shmem.f90 vdwf orcefield_glb.f90 jacobi.f90 main_mpi.f90 openacc.f90 scala.f90 asa.f90 lattice.f90 poscar.f90 ini.f90 mgrid.f90 ml_ff_error.f90 ml_ff_mpi.f90 ml_ff_helper.f90 ml_ff_logfile.f90 ml_ff_math.f90 ml_ff_iohandl e.f90 ml_ff_memory.f90 ml_ff_abinitio.f90 ml_ff_ff.f90 ml_ff_mlff.f90 setex_struct.f90 xclib.f90 vdw_nl.f90 xclib_grad.f90 setex.f90 radial.f90 pseudo.f90 gridq.f90 ebs.f90 symlib.f90 mkpoints.f90 random.f9 0 wave.f90 wave_mpi.f90 wave_high.f90 bext.f90 spinsym.f90 symmetry.f90 lattlib.f90 nonl.f90 nonlr.f90 nonl_high.f90 dfast.f90 choleski2.f90 mix.f90 hamil.f90 xcgrad.f90 xcspin.f90 potex1.f90 potex2.f90 con strmag.f90 cl_shift.f90 relativistic.f90 LDApU.f90 paw_base.f90 metagga.f90 egrad.f90 pawsym.f90 pawfock.f90 pawlhf.f90 diis.f90 rhfatm.f90 hyperfine.f90 fock_ace.f90 paw.f90 mkpoints_full.f90 charge.f90 Le bedev-Laikov.f90 stockholder.f90 dipol.f90 solvation.f90 scpc.f90 pot.f90 tet.f90 dos.f90 elf.f90 hamil_rot.f90 chain.f90 dyna.f90 fileio.f90 vhdf5.f90 sphpro.f90 us.f90 core_rel.f90 aedens.f90 wavpre.f90 w avpre_noio.f90 broyden.f90 dynbr.f90 reader.f90 writer.f90 xml_writer.f90 brent.f90 stufak.f90 opergrid.f90 stepver.f90 fast_aug.f90 fock_multipole.f90 fock.f90 fock_dbl.f90 fock_frc.f90 mkpoints_change.f90 subrot_cluster.f90 sym_grad.f90 mymath.f90 npt_dynamics.f90 subdftd3.f90 subdftd4.f90 internals.f90 dynconstr.f90 dimer_heyden.f90 dvvtrajectory.f90 vdwforcefield.f90 nmr.f90 pead.f90 k-proj.f90 subrot.f90 subrot_scf.f90 paircorrection.f90 rpa_force.f90 ml_reader.f90 ml_interface.f90 force.f90 pwlhf.f90 gw_model.f90 optreal.f90 steep.f90 rmm-diis.f90 davidson.f90 david_inner.f90 root_find.f90 lcao_bare.f90 l ocproj.f90 electron_common.f90 electron.f90 rot.f90 electron_all.f90 shm.f90 pardens.f90 optics.f90 constr_cell_relax.f90 stm.f90 finite_diff.f90 elpol.f90 hamil_lr.f90 rmm-diis_lr.f90 subrot_lr.f90 lr_help er.f90 hamil_lrf.f90 elinear_response.f90 ilinear_response.f90 linear_optics.f90 setlocalpp.f90 wannier.f90 electron_OEP.f90 electron_lhf.f90 twoelectron4o.f90 gauss_quad.f90 m_unirnk.f90 minimax_ini.f90 mi nimax_dependence.f90 minimax_functions1D.f90 minimax_functions2D.f90 minimax_struct.f90 minimax_varpro.f90 minimax.f90 umco.f90 mlwf.f90 ratpol.f90 pade_fit.f90 screened_2e.f90 wave_cacher.f90 crpa.f90 chi_ base.f90 wpot.f90 local_field.f90 ump2.f90 ump2kpar.f90 fcidump.f90 ump2no.f90 bse_te.f90 bse.f90 time_propagation.f90 acfdt.f90 afqmc.f90 rpax.f90 chi.f90 acfdt_GG.f90 dmft.f90 GG_base.f90 greens_orbital.f 90 lt_mp2.f90 rnd_orb_mp2.f90 greens_real_space.f90 chi_GG.f90 chi_super.f90 sydmat.f90 rmm-diis_mlr.f90 linear_response_NMR.f90 wannier_interpol.f90 wave_interpolate.f90 linear_response.f90 auger.f90 dmatr ix.f90 phonon.f90 wannier_mats.f90 elphon.f90 core_con_mat.f90 embed.f90 extpot.f90 rpa_high.f90 fftmpiw.f90 fftmpi_map.f90 fftw3d.f90 fft3dlib.f90 main.f90 > .depend
awk: fatal: cannot open file `c2f_interface.f90' for reading: No such file or directory
make[2]: *** [makefile:152: depend] Error 2
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/gam'
make[1]: *** [makefile:149: dependencies] Error 2
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/gam'
make: *** [makefile:16: gam] Error 2
^Cmake[2]: *** [makefile:163: c2f_interface.f90] Interrupt
make[1]: *** [makefile:149: dependencies] Interrupt
make: *** [makefile:16: std] Interrupt
Last edited by
manuel_engel1 on Mon Mar 03, 2025 8:37 am, edited 1 time in total.
Reason: Put compiler log into code block to improve readability
-
manuel_engel1
- Global Moderator

- Posts: 212
- Joined: Mon May 08, 2023 4:08 pm
#4
Post
by manuel_engel1 » Mon Mar 03, 2025 4:04 pm
From the compiler output, it is clear that the preprocessing stage of the build process is not executed correctly. This causes the awk script that tries to read the preprocessed *.f90 files to fail, since they have not been created.
I can see that you have made changes to the makefile.include. In particular, the line
Code: Select all
CPP = cpp #nvfortran -Mpreprocess -Mfree -Mextend -E $(CPP_OPTIONS) $*$(FUFFIX) > $*$(SUFFIX)
is problematic because everything past the #
is commented out, including the final part,
Since you have nvfortran in your toolchain, I suggest that you revert the line to its original form and just use nvfortran for preprossing.
Let me know if that works for you.
Manuel Engel
VASP developer
-
aqteish
- Newbie

- Posts: 4
- Joined: Tue May 11, 2021 8:34 am
#5
Post
by aqteish » Tue Mar 04, 2025 11:01 am
Hello
I reverted the configuration line to the original form and got the following error
Code: Select all
nvfortran -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c openmp.f90
nvfortran -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c reader_base.f90
NVFORTRAN-S-0017-Unable to open include file: mpif.h (tutor.F: 172)
0 inform, 0 warnings, 1 severes, 0 fatal for tutor
NVFORTRAN-S-0017-Unable to open include file: mpif.h (tutor.F: 172)
0 inform, 0 warnings, 1 severes, 0 fatal for tutor
NVFORTRAN-S-0017-Unable to open include file: mpif.h (tutor.F: 172)
0 inform, 0 warnings, 1 severes, 0 fatal for tutor
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (command_line.F: 3)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: command_line.o] Error 2
make[2]: *** Waiting for unfinished jobs....
nvfortran -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c openmp.f90
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (command_line.F: 3)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: command_line.o] Error 2
make[2]: *** Waiting for unfinished jobs....
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (command_line.F: 3)
nvfortran -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c mpi.f90
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
NVFORTRAN-F-0004-Unable to open MODULE file incar_reader.mod (reader_base.F: 7)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: reader_base.o] Error 2
make[2]: *** [makefile:166: command_line.o] Error 2
make[2]: *** Waiting for unfinished jobs....
NVFORTRAN-F-0004-Unable to open MODULE file incar_reader.mod (reader_base.F: 7)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: reader_base.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file reader_tags.mod (openmp.F: 57)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
NVFORTRAN-F-0004-Unable to open MODULE file incar_reader.mod (reader_base.F: 7)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: openmp.o] Error 2
make[2]: *** [makefile:166: reader_base.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (incar_reader.F: 177)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: incar_reader.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (incar_reader.F: 177)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: incar_reader.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (incar_reader.F: 177)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: incar_reader.o] Error 2
NVFORTRAN-F-0004-Unable to open MODULE file reader_tags.mod (openmp.F: 57)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: openmp.o] Error 2
NVFORTRAN-S-0017-Unable to open include file: mpif.h (mpi.F: 114)
0 inform, 0 warnings, 1 severes, 0 fatal for mpimy
NVFORTRAN-F-0004-Unable to open MODULE file tutor.mod (mpi.F: 156)
NVFORTRAN/x86-64 Linux 25.1-0: compilation aborted
make[2]: *** [makefile:166: mpi.o] Error 2
make[2]: *** [makefile:166: tutor.o] Error 2
make[2]: *** [makefile:166: tutor.o] Error 2
make[2]: *** [makefile:166: tutor.o] Error 2
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/ncl'
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/gam'
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
cp: cannot stat 'vasp': No such file or directory
cp: cannot stat 'vasp': No such file or directory
make[1]: *** [makefile:129: all] Error 1
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/ncl'
make[1]: *** [makefile:129: all] Error 1
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/gam'
cp: cannot stat 'vasp': No such file or directory
make: *** [makefile:17: ncl] Error 2
make: *** Waiting for unfinished jobs....
make: *** [makefile:17: gam] Error 2
make[1]: *** [makefile:129: all] Error 1
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
make: *** [makefile:17: std] Error 2
Last edited by
manuel_engel1 on Tue Mar 04, 2025 2:11 pm, edited 1 time in total.
Reason: code block
-
manuel_engel1
- Global Moderator

- Posts: 212
- Joined: Mon May 08, 2023 4:08 pm
#6
Post
by manuel_engel1 » Tue Mar 04, 2025 2:58 pm
The compiler cannot find the MPI library. This is due to another modified line in the makefile.include:
I suggest that you copy a fresh makefile.include from the arch directory and start compilation from there, following our compilation instructions.
Manuel Engel
VASP developer
-
aqteish
- Newbie

- Posts: 4
- Joined: Tue May 11, 2021 8:34 am
#7
Post
by aqteish » Thu Mar 06, 2025 11:38 am
Thank you I have used a fresh make file ( makefile.include.nvhpc) and I got the following error. I shared the make file content after the error logs.
Code: Select all
make -j 1 all
if [ ! -d build/std ] ; then mkdir -p build/std ; fi
cp src/makefile src/.objects src/makedeps.awk makefile.include build/std
make -C build/std VERSION=std check
make[1]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std'
exit 0
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
make -C build/std VERSION=std cleandependencies -j1
make[1]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std'
rm -f .depend
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
make -C build/std VERSION=std all
make[1]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std'
rsync -ru ../../src/lib .
cp makefile.include lib
make -C lib -j1
make[2]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std/lib'
make libdmy.a
make[3]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std/lib'
make[3]: 'libdmy.a' is up to date.
make[3]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std/lib'
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std/lib'
rsync -ru ../../src/parser .
cp makefile.include parser
make -C parser -j1
make[2]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std/parser'
make libparser.a
make[3]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std/parser'
make[3]: 'libparser.a' is up to date.
make[3]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std/parser'
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std/parser'
rsync -u ../../src/*.F ../../src/*.inc .
rm -f vasp ; make vasp ; cp vasp ../../bin/vasp_std
make[2]: Entering directory '/usr/local/pkg/vasp.6.3.2/build/std'
mpif90 -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c tutor.f90
ifort: command line warning #10006: ignoring unknown option '-Mfree'
ifort: command line warning #10006: ignoring unknown option '-Mbackslash'
ifort: command line warning #10006: ignoring unknown option '-Mlarge_arrays'
ifort: command line warning #10159: invalid argument for option '-tp'
tutor.F(3): error #7013: This module file was not generated by any release of this compiler. [PREC]
use prec, only: q
--------^
tutor.F(127): error #6683: A kind type parameter must be a compile-time constant. [Q]
real(q), allocatable :: rval(:)
-------------^
tutor.F(53): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [OUTPUT_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
-----------------------------^
tutor.F(53): error #6973: This is not a valid initialization expression. [OUTPUT_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
-----------------------------^
tutor.F(53): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [ERROR_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
----------------------------------------------------^
tutor.F(53): error #6973: This is not a valid initialization expression. [ERROR_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
----------------------------------------------------^
tutor.F(53): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [ERROR_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
--------------------------------------------------------------------------^
tutor.F(53): error #6973: This is not a valid initialization expression. [ERROR_UNIT]
integer :: unitOut = output_unit, unitErr = error_unit, unitBug = error_unit
--------------------------------------------------------------------------^
tutor.F(201): error #7013: This module file was not generated by any release of this compiler. [STRING]
use string, only: str
------------^
tutor.F(259): error #6580: Name in only-list does not exist or is not accessible. [PARSENEWLINE]
use string, only: parseNewLine
--------------------------^
tutor.F(445): error #7013: This module file was not generated by any release of this compiler. [STRING]
use string, only: str
------------^
tutor.F(1192): error #6580: Name in only-list does not exist or is not accessible. [STR]
use string, only: str
--------------------------^
tutor.F(1194): error #6683: A kind type parameter must be a compile-time constant. [Q]
real(q), allocatable, intent(in) :: weight(:)
-------------^
tutor.F(3): error #6580: Name in only-list does not exist or is not accessible. [Q]
use prec, only: q
--------------------^
tutor.F(4): error #6580: Name in only-list does not exist or is not accessible. [OUTPUT_UNIT]
use iso_fortran_env, only: output_unit, error_unit
-------------------------------^
tutor.F(4): error #6580: Name in only-list does not exist or is not accessible. [ERROR_UNIT]
use iso_fortran_env, only: output_unit, error_unit
--------------------------------------------^
tutor.F(206): error #6404: This name does not have a type, and must have an explicit type. [STR]
res = "internal error in: " // trim(filename) // " at line: " // str(linenumber) // "\n\n"
-----------------------------------------------------------------------------^
tutor.F(206): error #6054: A CHARACTER data type is required in this context. [STR]
res = "internal error in: " // trim(filename) // " at line: " // str(linenumber) // "\n\n"
-----------------------------------------------------------------------------^
tutor.F(201): error #6580: Name in only-list does not exist or is not accessible. [STR]
use string, only: str
--------------------------^
tutor.F(264): error #6404: This name does not have a type, and must have an explicit type. [PARSENEWLINE]
res = res // formatter%wrapMessage(parseNewline(message))
-------------------------------------------^
tutor.F(496): error #6404: This name does not have a type, and must have an explicit type. [STR]
res = 'One real-space projector is optimized for E = ' // str(arg%rval(1)) // &
----------------------------------------------------------------------^
tutor.F(496): error #6054: A CHARACTER data type is required in this context. [STR]
res = 'One real-space projector is optimized for E = ' // str(arg%rval(1)) // &
----------------------------------------------------------------------^
tutor.F(497): error #6054: A CHARACTER data type is required in this context. [STR]
' eV but you are using a cutoff of ENMAX = ' // str(arg%rval(2)) // &
----------------------------------------------------------------^
tutor.F(498): error #6054: A CHARACTER data type is required in this context. [STR]
' eV (QCUT = ' // str(arg%rval(3)) // ' a.u.). This makes no sense. &
----------------------------------^
tutor.F(510): error #6054: A CHARACTER data type is required in this context. [STR]
&I found is LEXCH = ' // str(arg%ival(1)) // ' for atom types <= ' // &
-----------------------------------------^
tutor.F(511): error #6054: A CHARACTER data type is required in this context. [STR]
str(arg%ival(3)-1) // ' but LEXCH = ' // str(arg%ival(2)) // ' was &
----------------^
tutor.F(511): error #6054: A CHARACTER data type is required in this context. [STR]
str(arg%ival(3)-1) // ' but LEXCH = ' // str(arg%ival(2)) // ' was &
---------------------------------------------------------^
tutor.F(512): error #6054: A CHARACTER data type is required in this context. [STR]
&found for atom type = ' // str(arg%ival(3)) // '. Use identical &
--------------------------------------------^
tutor.F(520): error #6054: A CHARACTER data type is required in this context. [STR]
str(arg%ival(2)) // ', NELECT = ' // str(arg%ival(1)) // '.'
----------------^
tutor.F(520): error #6054: A CHARACTER data type is required in this context. [STR]
str(arg%ival(2)) // ', NELECT = ' // str(arg%ival(1)) // '.'
-----------------------------------------------------^
tutor.f90(1960): catastrophic error: Too many errors, exiting
compilation aborted for tutor.f90 (code 1)
make[2]: *** [makefile:166: tutor.o] Error 1
make[2]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
cp: cannot stat 'vasp': No such file or directory
make[1]: *** [makefile:129: all] Error 1
make[1]: Leaving directory '/usr/local/pkg/vasp.6.3.2/build/std'
make: *** [makefile:17: std] Error 2
cmadmin@cm01:/usr/local/pkg/vasp.6.3.2$
Code: Select all
Default precompiler options
CPP_OPTIONS = -DHOST=\"LinuxNV\" \
-DMPI -DMPI_BLOCK=8000 -Duse_collective \
-DscaLAPACK \
-DCACHE_SIZE=4000 \
-Davoidalloc \
-Dvasp6 \
-Duse_bse_te \
-Dtbdyn \
-Dqd_emulate \
-Dfock_dblbuf
CPP = nvfortran -Mpreprocess -Mfree -Mextend -E $(CPP_OPTIONS) $*$(FUFFIX) > $*$(SUFFIX)
FC = mpif90
FCL = mpif90 -c++libs
FREE = -Mfree
FFLAGS = -Mbackslash -Mlarge_arrays
OFLAG = -fast
DEBUG = -Mfree -O0 -traceback
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
# Redefine the standard list of O1 and O2 objects
SOURCE_O1 := pade_fit.o
SOURCE_O2 := pead.o
# For what used to be vasp.5.lib
CPP_LIB = $(CPP)
FC_LIB = nvfortran
CC_LIB = nvc -w
CFLAGS_LIB = -O
FFLAGS_LIB = -O1 -Mfixed
FREE_LIB = $(FREE)
OBJECTS_LIB = linpack_double.o
# For the parser library
CXX_PARS = nvc++ --no_warnings
##
## Customize as of this point! Of course you may change the preceding
## part of this file as well if you like, but it should rarely be
## necessary ...
##
#
# When compiling on the target machine itself , change this to the
# relevant target when cross-compiling for another architecture
VASP_TARGET_CPU ?= -tp host
FFLAGS += $(VASP_TARGET_CPU)
# Specify your NV HPC-SDK installation (mandatory)
#... first try to set it automatically
NVROOT =$(shell which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }')
# If the above fails, then NVROOT needs to be set manually
#NVHPC ?= /opt/nvidia/hpc_sdk
#NVVERSION = 21.11
#NVROOT = $(NVHPC)/Linux_x86_64/$(NVVERSION)
# Software emulation of quadruple precsion (mandatory)
QD ?= $(NVROOT)/compilers/extras/qd
LLIBS += -L$(QD)/lib -lqdmod -lqd
INCS += -I$(QD)/include/qd
# BLAS (mandatory)
BLAS = -lblas
# LAPACK (mandatory)
LAPACK = -llapack
# scaLAPACK (mandatory)
SCALAPACK = -Mscalapack
LLIBS += $(SCALAPACK) $(LAPACK) $(BLAS)
# FFTW (mandatory)
FFTW_ROOT ?= /usr/local
LLIBS += -L$(FFTW_ROOT)/lib -lfftw3
INCS += -I$(FFTW_ROOT)/include
# HDF5-support (optional but strongly recommended)
#CPP_OPTIONS+= -DVASP_HDF5
#HDF5_ROOT ?= /path/to/your/hdf5/installation
#LLIBS += -L$(HDF5_ROOT)/lib -lhdf5_fortran
#INCS += -I$(HDF5_ROOT)/include
# For the VASP-2-Wannier90 interface (optional)
#CPP_OPTIONS += -DVASP2WANNIER90
#WANNIER90_ROOT ?= /path/to/your/wannier90/installation
#LLIBS += -L$(WANNIER90_ROOT)/lib -lwannier
Last edited by
manuel_engel1 on Thu Mar 06, 2025 12:26 pm, edited 1 time in total.
Reason: code blocks
-
manuel_engel1
- Global Moderator

- Posts: 212
- Joined: Mon May 08, 2023 4:08 pm
#8
Post
by manuel_engel1 » Thu Mar 06, 2025 12:42 pm
It looks like your mpif90
is not the one from the nvidia SDK but from the Intel suite of compilers. You can see this in the output in the following lines:
Code: Select all
mpif90 -Mfree -Mbackslash -Mlarge_arrays -tp host -fast -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.1/compilers/extras/qd/include/qd -I/usr/local/include -c tutor.f90
ifort: command line warning #10006: ignoring unknown option '-Mfree'
ifort: command line warning #10006: ignoring unknown option '-Mbackslash'
ifort: command line warning #10006: ignoring unknown option '-Mlarge_arrays'
ifort: command line warning #10159: invalid argument for option '-tp'
ifort
is the intel compiler and should not be used here. Please, make sure that your environment only contains the nvidia compilers, not the ones from the intel compiler suite. To verify which compiler is used by mpif90, you can check its version. On my system, it gives the following output:
Code: Select all
$ mpif90 --version
nvfortran 22.11-0 64-bit target on x86-64 Linux -tp haswell
Alternatively, you can set the path to mpif90 explicitly in the makefile.include but this should be avoided and instead be handled by the environment.
In addition to the above, it might be a good idea to completely reset the build environment by running
I suspect that you are running into issues with dependency resolution after multiple failed compilation attempts. Cleaning the build environment usually fix this.
Manuel Engel
VASP developer