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

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: