LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Mailing List Archives
Re: [lammps-users] GPU Lammps : cannot open shared object file
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lammps-users] GPU Lammps : cannot open shared object file

From: Stefan Paquay <stefanpaquay@...24...>
Date: Wed, 15 Nov 2017 13:43:10 -0500

I don't know for sure but my guess is at runtime, the local directory is not checked for libraries. Why is there no in a sensible location? Mine is in /usr/lib/. You probably don't want your executable to actually use the stubs either.

On Wed, Nov 15, 2017 at 1:32 PM, Vaidyanathan M.S <msvaidyanathan1729@...24...> wrote:

I am trying to install GPU version of LAMMPS. I was successful in compiling LAMMPS with GPU version and it did generate the executable lmp_mesabi. Details regarding arch/version of computer/LAMMPS are at the end of the email.

However when I try to run, it throws the exception

error while loading shared libraries: cannot open shared object file: No such file or directory

From reading the previous threads, I realized it is a problem with the dynamic linking. 

When I execute 

vsethura@...7239... [~/mylammps/src] % ldd lmp_mesabi =>  (0x00007ffdf1bfa000)
/lib64/ (0x00007f2941afd000) => /panfs/roc/intel/x86_64/2016/parallel_studio_xe_msi/compilers_and_libraries_2016.3.210/linux/mpi/intel64/lib/ (0x00007f294132e000) => /lib64/ (0x00007f2941111000) => /usr/lib64/ (0x00007f2940ec1000) => /panfs/roc/msisoft/cuda/8.0/lib64/ (0x00007f2940c5b000) => not found => /lib64/ (0x00007f2940a57000) => /panfs/roc/msisoft/gcc/4.9.2_2/lib64/ (0x00007f2940745000) => /panfs/roc/intel/x86_64/2016/parallel_studio_xe_msi/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64/ (0x00007f293fc35000) => /panfs/roc/intel/x86_64/2016/parallel_studio_xe_msi/compilers_and_librares_2016.3.210/linux/mkl/lib/intel64/ (0x00007f293e224000) => /panfs/roc/intel/x86_64/2016/parallel_studio_xe_msi/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64/ (0x00007f293d54b000) => /lib64/ (0x00007f293d2c7000) => /panfs/roc/intel/x86_64/2016/parallel_studio_xe_msi/compilers_and_libraries_2016.3.210/linux/mpi/intel64/lib/ (0x00007f293cf29000) => /lib64/ (0x00007f293cd21000) => /panfs/roc/msisoft/gcc/4.9.2_2/lib64/ (0x00007f293cb0b000) => /lib64/ (0x00007f293c777000)
/lib64/ (0x00007f2941cfe000)

I realize that the is not found. 

But I did give a correct softlink to the main file. For instance, when I execute,

vsethura@...7239... [~/mylammps/lib/gpu] % ls -l 

lrwxrwxrwx 1 vsethura dorfmank 50 Nov 15 11:30 -> /panfs/roc/msisoft/cuda/8.0/lib64/stubs/

which I would expect to mean that it is correctly linked.

Further, as per Axel's suggestion in one of the previous posts, I added the -Wl,-rpath links to the Makefile.lammps too. The following is my lammps Makefile from GPU folder

gpu_SYSINC =
gpu_SYSLIB =  -lcudart -lcuda
gpu_SYSPATH = -L/panfs/roc/msisoft/cuda/8.0/lib64/stubs -Wl,-rpath,/path/panfs/roc/msisoft/cuda/8.0/lib64/stubs

Also, I added the path to LD_LIBRARY_PATH

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/panfs/roc/msisoft/cuda/8.0/lib64/stubs

It would be great if anyone could point out what I am doing wrong or missing something obvious.

More details


LAMMPS Version: LAMMPS (22 Sep 2017)

Thanks in advance

Vaidyanathan M S

Postdoctoral Research Assistant

University of Minnesota, Twin Cities

Check out the vibrant tech community on one of the world's most
engaging tech sites,!
lammps-users mailing list