Page 1 of 1

/usr/bin/ld, cannot find -lsvml

Posted: Tue Feb 05, 2008 1:10 am
by lqzhang
Dear administer:

When compiling vasp4.6 parallel edition on opteron machine using pgf90 compiler, mkl and scalapack, I got following error message:

rm -f vasp
pgf90 -o vasp -lsvml main.o base.o mpi.o smart_allocate.o xml.o constant.o jacobi.o main_mpi.o scala.o asa.o lattice.o poscar.o ini.o setex.o radial.o pseudo.o mgrid.o mkpoints.o wave.o wave_mpi.o symmetry.o symlib.o lattlib.o random.o nonl.o nonlr.o dfast.o choleski2.o mix.o charge.o xcgrad.o xcspin.o potex1.o potex2.o metagga.o constrmag.o pot.o cl_shift.o force.o dos.o elf.o tet.o hamil.o steep.o chain.o dyna.o relativistic.o LDApU.o sphpro.o paw.o us.o ebs.o wavpre.o wavpre_noio.o broyden.o dynbr.o rmm-diis.o reader.o writer.o tutor.o xml_writer.o brent.o stufak.o fileio.o opergrid.o stepver.o dipol.o xclib.o chgloc.o subrot.o optreal.o davidson.o edtest.o electron.o shm.o pardens.o paircorrection.o optics.o constr_cell_relax.o stm.o finite_diff.o elpol.o setlocalpp.o aedens.o fftmpi.o fftmpi_map.o fft3dlib.o -L../vasp.4.lib -ldmy ../vasp.4.lib/linpack_double.o ../vasp.4.lib/lapack_double.o -lmkl_p4 -lpthread
/usr/bin/ld: cannot find -lsvml
make: *** [vasp] Error 2

I think it tried to get the file svml. But there is no such kind of file on computer but libsvml.a and libsvml.so files in intel compiler directory. I already set the path as default. I really could not solve the problem. Any kind of suggestion is welcomed.

/usr/bin/ld, cannot find -lsvml

Posted: Tue Feb 05, 2008 7:45 am
by admin
please search for the libsvml.{a,so} library file (typically in the lib path of the compiler

/usr/bin/ld, cannot find -lsvml

Posted: Tue Feb 05, 2008 7:53 am
by admin
please use Portland compiler libraries if you compile with pgf90. Check if the libs you link were compiled with pgf90 of ifort. The libsvml.{a,so} library file typically is in the lib path of the intel compiler.

/usr/bin/ld, cannot find -lsvml

Posted: Wed Feb 06, 2008 2:07 am
by lqzhang
I compiled those codes on super computers. The only source for blas is in mkl. that is why i used intel library although I used pgf90 compiler, because i could not use mpif90 compiler.

/usr/bin/ld, cannot find -lsvml

Posted: Wed Feb 06, 2008 2:47 am
by lqzhang
In fact, on the super computer, I could find out libsvml.a and libsvml.so files in the intel-compiler lib directory. and the path to the intel-compiler was added to the default route. then how to check if the present libs were compiled with pgf90 of ifort. if they are, then how to solve the present problem? Thanks a lot.

/usr/bin/ld, cannot find -lsvml

Posted: Wed Feb 06, 2008 8:26 am
by admin
If they are in the intel lib directory, they are probably installed with ifort. In case of doubt ask the sys admin of your supercomputer. They should provide all necessary information on that (maybe you can even find it on the web page of the computing center)