Problem with shared libraries after upgrade

I’ve just upgrade our PGI Fortran compilers from version 15.10 to version 16.1. At first glance, everything seemed to work nicely. Our codes compiled as usual. However, when I try to run our compiled executables, I get error messages like the following:

> ./run
./run: error while loading shared libraries: cannot open shared object file: No such file or directory

After some investigation, I found that everything works as expected if I set LD_LIBRARY_PATH, i.e.

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$PGI/linux86-64/2016/lib"

This was not necessary with earlier versions. I’ve skimmed the release notes and user guides, but I could not find anything about this being necessary after the update.

I think that is handled in one of three ways.

  1. The library exists, and there is also a pointer in the /usr/lib directory to

  2. exists, but there is no file that points to it.
    In that case we put into the PGI library area, pointing to

  3. There is no on the system, and no that points to it. In that case, we put a pointer and a dummy into the PGI library directory.

So if you have, make sure you also have that is a soft-linked to, and you will not need
to add that directory.