Compile VASP 5.4.4 with VTST-176
Moderator: moderators
Compile VASP 5.4.4 with VTST-176
```
root@com1:/home/vasp/vasp.5.4.4# make all
mkdir build/std ; \
cp src/makefile src/.objects makefile.include build/std ; \
make -C build/std VERSION=std all
mkdir: cannot create directory ‘build/std’: File exists
make[1]: Entering directory '/home/vasp/vasp.5.4.4/build/std'
rsync -ru ../../src/lib .
cp makefile.include lib
make -C lib -j1
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std/lib'
make libdmy.a
make[3]: Entering directory '/home/vasp/vasp.5.4.4/build/std/lib'
make[3]: 'libdmy.a' is up to date.
make[3]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/lib'
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/lib'
rsync -ru ../../src/parser .
cp makefile.include parser
make -C parser -j1
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std/parser'
make libparser.a
make[3]: Entering directory '/home/vasp/vasp.5.4.4/build/std/parser'
make[3]: 'libparser.a' is up to date.
make[3]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/parser'
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/parser'
rsync -u ../../src/*.F ../../src/*.inc .
rm -f vasp ; make vasp ; cp vasp ../../bin/vasp_std
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std'
gcc -E -P -C -w chain.F >chain.f90 -DHOST=\"LinuxGNU\" -DMPI -DMPI_BLOCK=8000 -Duse_collective -DscaLAPACK -DCACHE_SIZE=4000 -Davoidalloc -Duse_bse_te -Dtbdyn -Duse_shmem -DNGZhalf
mpif90 -ffree-form -ffree-line-length-none -w -O2 -mtune=native -m64 -I/usr/include -c chain.f90
chain.f90:105:8:
USE neb
1
Fatal Error: Can't open module file ‘neb.mod’ for reading at (1): No such file or directory
compilation terminated.
makefile:169: recipe for target 'chain.o' failed
make[2]: *** [chain.o] Error 1
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std'
cp: cannot stat 'vasp': No such file or directory
makefile:142: recipe for target 'all' failed
make[1]: *** [all] Error 1
make[1]: Leaving directory '/home/vasp/vasp.5.4.4/build/std'
makefile:10: recipe for target 'std' failed
make: *** [std] Error 2
```
This is the error message when I compiled VASP with VTST-176.
I installed just VASP 5.4.4 without VTST and it succeeded. But this time I encounter
Fatal Error: Can't open module file ‘neb.mod’ for reading at (1): No such file or directory
root@com1:/home/vasp/vasp.5.4.4# make all
mkdir build/std ; \
cp src/makefile src/.objects makefile.include build/std ; \
make -C build/std VERSION=std all
mkdir: cannot create directory ‘build/std’: File exists
make[1]: Entering directory '/home/vasp/vasp.5.4.4/build/std'
rsync -ru ../../src/lib .
cp makefile.include lib
make -C lib -j1
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std/lib'
make libdmy.a
make[3]: Entering directory '/home/vasp/vasp.5.4.4/build/std/lib'
make[3]: 'libdmy.a' is up to date.
make[3]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/lib'
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/lib'
rsync -ru ../../src/parser .
cp makefile.include parser
make -C parser -j1
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std/parser'
make libparser.a
make[3]: Entering directory '/home/vasp/vasp.5.4.4/build/std/parser'
make[3]: 'libparser.a' is up to date.
make[3]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/parser'
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std/parser'
rsync -u ../../src/*.F ../../src/*.inc .
rm -f vasp ; make vasp ; cp vasp ../../bin/vasp_std
make[2]: Entering directory '/home/vasp/vasp.5.4.4/build/std'
gcc -E -P -C -w chain.F >chain.f90 -DHOST=\"LinuxGNU\" -DMPI -DMPI_BLOCK=8000 -Duse_collective -DscaLAPACK -DCACHE_SIZE=4000 -Davoidalloc -Duse_bse_te -Dtbdyn -Duse_shmem -DNGZhalf
mpif90 -ffree-form -ffree-line-length-none -w -O2 -mtune=native -m64 -I/usr/include -c chain.f90
chain.f90:105:8:
USE neb
1
Fatal Error: Can't open module file ‘neb.mod’ for reading at (1): No such file or directory
compilation terminated.
makefile:169: recipe for target 'chain.o' failed
make[2]: *** [chain.o] Error 1
make[2]: Leaving directory '/home/vasp/vasp.5.4.4/build/std'
cp: cannot stat 'vasp': No such file or directory
makefile:142: recipe for target 'all' failed
make[1]: *** [all] Error 1
make[1]: Leaving directory '/home/vasp/vasp.5.4.4/build/std'
makefile:10: recipe for target 'std' failed
make: *** [std] Error 2
```
This is the error message when I compiled VASP with VTST-176.
I installed just VASP 5.4.4 without VTST and it succeeded. But this time I encounter
Fatal Error: Can't open module file ‘neb.mod’ for reading at (1): No such file or directory
Re: Compile VASP 5.4.4 with VTST-176
Make sure to add the VTST objects to your src/.objects file. This can be done by including a first line in the file:
VTST_OBJS = bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o \
fire.o lanczos.o neb.o qm.o opt.o chain.o
and then add those objects after hamil_rot.o, as in:
hamil_rot.o \
$(VTST_OBJS) \
dyna.o \
VTST_OBJS = bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o \
fire.o lanczos.o neb.o qm.o opt.o chain.o
and then add those objects after hamil_rot.o, as in:
hamil_rot.o \
$(VTST_OBJS) \
dyna.o \
Re: Compile VASP 5.4.4 with VTST-176
In the installation of VTST page, http://theory.cm.utexas.edu/vasp/installation.html
They only refer that we must add variables (*.o) before chain.o
So you mean it has a secret rule of the order more as you mentioned (after hamil_rot.o and before dyna.o)?
They only refer that we must add variables (*.o) before chain.o
So you mean it has a secret rule of the order more as you mentioned (after hamil_rot.o and before dyna.o)?
Re: Compile VASP 5.4.4 with VTST-176
No, there is no secret rule. I just looked at my own makefile and stated where it was. To be honest, I'm not sure exactly where in the build order the vtst objects should go. I just figured that giving a specific place was better than suggesting that you place it by trial and error.
Re: Compile VASP 5.4.4 with VTST-176
Now I check .objects files, but I had done what you said to me. And, it gave the error message above.
Or did you mean
hamil_rot.o \
$(bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o fire.o lanczos.o neb.o qm.o opt.o chain.o)\
chain.o \
exactly same as above?
And do I have to change `makefile.include?` I just copied the contents from
http://cms.mpi.univie.ac.at/wiki/index. ... on_of_VASP
It had worked before I started to compile VTST.
My OS is ubuntu 18.04 LTS.
Or did you mean
hamil_rot.o \
$(bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o fire.o lanczos.o neb.o qm.o opt.o chain.o)\
chain.o \
exactly same as above?
And do I have to change `makefile.include?` I just copied the contents from
http://cms.mpi.univie.ac.at/wiki/index. ... on_of_VASP
It had worked before I started to compile VTST.
My OS is ubuntu 18.04 LTS.
Re: Compile VASP 5.4.4 with VTST-176
You do not need to modify makefile.include. Make sure that you do a make clean and check that chain.o is removed before making the vtst version.
Re: Compile VASP 5.4.4 with VTST-176
First, `make clean` doesn't work in VASP folder.
(Ok, I'm not good at programming C++, however, I read about make command
that if I want to use 'clean' option, requires predefinition in 'makefile' or 'makefile.include')
Second, what do you mean by removing chain.o before making the VTST version?
Could you explain more? I so appreciate your responses.
(Ok, I'm not good at programming C++, however, I read about make command
that if I want to use 'clean' option, requires predefinition in 'makefile' or 'makefile.include')
Second, what do you mean by removing chain.o before making the VTST version?
Could you explain more? I so appreciate your responses.
Re: Compile VASP 5.4.4 with VTST-176
the command for vasp is:
make veryclean
My concern is that there is an old chain.o object file in the src directory. If you clean the build there should be no .o files in the src subdirectory.
make veryclean
My concern is that there is an old chain.o object file in the src directory. If you clean the build there should be no .o files in the src subdirectory.
Re: Compile VASP 5.4.4 with VTST-176
Oops! I found out that there are two chain.o in the .object file.
One is for SOURCE, and the another is for SOURCE_GPU.
I wrote extra *.o variable on the SOURCE_GPU. This might cause the error?
And could you let me know the command `make veryclean`? It just removes all files in `build` folder, right?
I will fix the variables and report here tomorrow.
One is for SOURCE, and the another is for SOURCE_GPU.
I wrote extra *.o variable on the SOURCE_GPU. This might cause the error?
And could you let me know the command `make veryclean`? It just removes all files in `build` folder, right?
I will fix the variables and report here tomorrow.
Re: Compile VASP 5.4.4 with VTST-176
Gotcha! I've solved the problem. It was my stupid mistake.
The problem was the double chain.o inside .object file.
Thank you so much, graeme! I learn about many things by this by the way.
All I have to do is to enjoy NEB~
The problem was the double chain.o inside .object file.
Thank you so much, graeme! I learn about many things by this by the way.
All I have to do is to enjoy NEB~