[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Having trouble creating a shared library package



I maintain a static library package, libagg-dev. There is an outstanding request for a shared library of libagg. I'm leaving the original libagg-dev binary package as it is, with just the static libraries. I'm adding binary packages libagg2-dev and libagg2. libagg2-dev has everything that libagg-dev has, plus the shared library. libagg2 has just the shared library.

I can't find any definitive information about what should be in a shared library SONAME-dev package and SONAME (runtime) package in the /usr/lib/<triple> directory. But I looked at the installed files in many libfoo-dev/libfoo package pairs and it seems like I should have this:

~john$ ls -l libagg2-dev/usr/lib/x86_64-linux-gnu/
total 1584
-rw-r--r-- 1 root root 219072 Dec  6 23:14 libagg.so
~john$ ls -l libagg2/usr/lib/x86_64-linux-gnu/
total 216
lrwxrwxrwx 1 root root     15 Dec  6 23:14 libagg.so.2 -> libagg.so.2.0.4
-rw-r--r-- 1 root root 219072 Dec  6 23:14 libagg.so.2.0.4

libagg2-dev has the .so file with the name libagg.so and libagg2 has the .so file with the name libagg.so.2.0.4 and the symlink libagg.so.2. 

But I get a lintian error:

E: libagg2-dev: ldconfig-symlink-missing-for-shlib usr/lib/x86_64-linux-gnu/libagg.so.2 usr/lib/x86_64-linux-gnu/libagg.so libagg.so.2

I also put in lintian overrides because libagg2-dev installs a .so file with the SONAME libagg2 but the package is called libagg2-dev:

libagg2-dev binary: package-name-doesnt-match-sonames *
libagg2-dev binary: non-dev-pkg-with-shlib-symlink *

So what is the deal with -DEV packages and shared libraries? What am I supposed to do?

-- john

Reply to: