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

Re: Question about a library that is not creating its *.so* files

Hi Mike and Samuel,

On Wed, Oct 7, 2009 at 11:24 AM, Mike Hommey <mh@glandium.org> wrote:
> On Wed, Oct 07, 2009 at 05:49:39PM +0200, Mike Hommey wrote:
>> On Wed, Oct 07, 2009 at 11:01:05AM -0430, Muammar El Khatib wrote:
>> > Hi,
>> >
>> > I maintain a package which is called CEGUI. In current SID version
>> > (0.6.2), when you compile it, the next files under usr/lib are
>> > created:
>> >
>> <snip>
>> >
>> > As can be seen above, there is no usr/lib/libCEGUI*.so.* files.I have
>> > looked into the configure file and there is this option:
>> >
>> > --enable-shared[=PKGS]  build shared libraries [default=yes]
>> >
>> > So I cannot understand,  Why this kind of stuff happen if the shared
>> > libraries are supposed to be created by default? Maybe this kind of
>> > question in silly, but what I would like to know is why it happens. I
>> > will appreciate your comments.
>> libname-x.y.z.so is another valid for for libname.so.x.y.z.

I thought so.

> That should read: libname-x.y.z.so is another valid form.
> I'll also add it is (supposed to be) supported by packaging tools.

So it is not necessary to create symlinks to have  libname.so.x.y.z, isn't it?

On Wed, Oct 7, 2009 at 11:22 AM, Peter Samuelson <peter@p12n.org> wrote:
> [Muammar El Khatib]
>> In most recent upstream version, when you compile it you will get this instead:
>> libCEGUIBase-0.7.0.so
>> libCEGUIBase.la
>> libCEGUIBase.so
> That looks fine.  If you look closely you will probably see that
> libCEGUIBase.so is a symlink to libCEGUIBase-0.7.0.so.

Yes, you are right.

>> So I cannot understand,  Why this kind of stuff happen if the shared
>> libraries are supposed to be created by default?
> Run 'file' on those files, you'll see they are what they're supposed to be.

They are share object files:

$ file libCEGUILuaScriptModule-0.7.0.so
libCEGUILuaScriptModule-0.7.0.so: ELF 32-bit LSB shared object, Intel
80386, version 1 (SYSV), dynamically linked, not stripped

> Then, just to make sure you're getting what you should be getting,
> check the SONAMEs, make sure they match the *-0.7.0.so filenames.

$ objdump -p libCEGUIDevILImageCodec-0.7.0.so | grep SONAME
  SONAME               libCEGUIDevILImageCodec-0.7.0.so

They match :)

> And if indeed the SONAMEs have changed (as it appears they have), make
> sure to update the binary package names and shlibs files accordingly.

You  made me recall http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=423502

> And ask the debian-release list before uploading, since what you now
> have on your hands is a library transition.

I will write them before uploading.

> And see if it's possible to remove the .la files, as was discussed on
> debian-devel awhile back.

I'll look for the thread about removing .la files in debian-devel.

Thank you very much, it was very helpful all the information that both
of you have given to me.

Muammar El Khatib.
Linux user: 403107.
GPG Key = 127029F1
http://muammar.me | http://proyectociencia.org
 : :' :
 `. `'

Reply to: