On Thu, 7 Nov 2013 18:33:13 -0800 (PST), David Highley wrote:
> Sounds a bit as if you're missing the *-devel packages for
those libs.
> libX11-devel libxml2-devel and so on.
Ah, now we see the subtlety in the split between development and run time
packages. It had not dawned on us that the final symlink is tied to the
development package, especially as their are other symlinks being
applied.
There is no "final" symlink. They are two separate types of symlinks:
The versioned one is maintained by ldconfig for the runtime. The
non-versioned .so is used by build-time tools (and may point directly
at the fully versioned lib file - there is no need to create a chain
of symlinks, such as .so -> .so.1 -> .so.1.0.0).
Note that the split into run-time and build-time packages is somewhat
controversial. There are exceptions, where the non-versioned .so symlink
is used at runtime (e.g. via a dlopen method). At Fedora, it is not always
tried to patch such code to open the versioned library instead. For example,
if the developers insist on opening the non-versioned .so (if installed)
and try to support a broad range of library interfaces instead of expecting
a specific library version. Sometimes packagers accept the burden of adding
and updating a patch, but there are exceptions.