Re: Are libtool .la files in non-dev library packages bugs?
>> Roberto Gordo Saez <rgs@linalco.com> writes:
> Marcelo E. Magallon wrote:
> > A wild guess: I don't know about the files named lib*.la, but the other
> > ones could be plug-ins. ltdl opens the .la file to find out the actual
>
> Yes, you are right, but... why does a plugin need both .so and .la files?
Because when you use ltdl's dlopen replacement, the function looks for
the .la file instead of the .so file. Let me rephrase: the plug-in
filename can be whatever you want (no dlopen-wanabe implementation that
I've seen is *that* stupid), but libtool produces filanames named after
the platform's own conventions. So, under Linux you get libfoo.so and
under HP/UX you get libfoo.sl. *That* information is stored in the .la
file. You pass the .la filename to dl_open, which opens it, searches
for the actual shared object filename and does whatever voodoo your
platform requires in order to dlopen a file.
Morale: if the .la file is there for this purpose (plug-ins), it
shouldn't be in /usr/lib in the first place (and neither should the
other libfoo.so* files). If the .la file is just a regular
libtool-feels-all-cozy-when-it-finds-it .la file, it should be in the
-dev package.
--
Marcelo | It wasn't blood in general he couldn't stand the sight
mmagallo@debian.org | of, it was just his blood in particular that was so
| upsetting.
| -- (Terry Pratchett, Sourcery)
Reply to: