[CMake] Finding dynamic libraries with major interface revision numbers

Andreas Pakulat apaku at gmx.de
Sun Jan 30 15:48:54 EST 2011


On 30.01.11 13:43:13, Jack Poulson wrote:
> Hello,
> 
> I am having a hard time figuring out what the appropriate method is for
> getting cmake to find a library of the form /usr/lib/libgfortran.so.2.
> Unfortunately, it is fairly common for /usr/lib/libgfortran.so not to exist.
> I am fairly certain that forming /usr/lib/libgfortran.so as a symbolic link
> would solve the problem, but I obviously cannot assume that the user has
> administrator privileges.

Actually, noting having the .so or a symlink of that name suggests a
broken installation. The 'pure' .so file is usually only included in the
development packages, as its only necessary when building software
against the shared library. Hence lacking that file, suggests that also
headers are missing and possibly more things.

> The find_library documentation for CMake 2.8 does not seem to specify how
> NAMES can be used to specify the library extension. The following does not
> find /usr/lib/libgfortran.so.2 when GFORTRAN_LIB_DIR_HINT is set to
> /usr/lib:

You can't, your gfortran installation is not complete (in terms of
linking to it), so fix that and then cmake will just fine the .so file.

Andreas

-- 
You should emulate your heros, but don't carry it too far.  Especially
if they are dead.


More information about the CMake mailing list