Description of problem: .la files aren't strictly needed on Linux and causes a lot of problems when compiling since they hardcode absolute paths to dependent libraries. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
See also other NOTABUGs.
Hi Joe, Bug #145879 seems to be the only other NOTABUG for libidn. It is unclear to me from this why keeping the .la file is desired. Is there some other report that you meant?
There reference was to the other identical bugs Kjartan was filing against my packages. This is not a bug. Removing the .la file will break KDE, which ltdlopen()s this library. The libidn.la file should continue to be packaged. Really. :)
Joe, including .la files generally goes against the now-to-be-used Packaging Guidelines (http://fedoraproject.org/wiki/Packaging/Guidelines, "14. Exclusion of static libraries". Reopening. And no, it won't break KDE (kde-redhat has been omitting libidn.la for *ages*). At most KDE would need to be rebuilt after libidn omitted the .la file. See also bug #170602 for another easy way for KDE to avoid breakage *without* having to rebuilt. Even if you're hesitant to make this change for *current* FC releases (it would introduce binary incompatibility from existing/previous libidn pkg releases), please seriously consider this for devel/fc6.
It is not the fact that any KDE .la file references libidn.la which makes this problematic. My understanding is that KDE uses ltdlopen() to load libidn at runtime, which requires the presence of the .la file - at runtime - to work correctly. Please convince me that is not the case.
AFAIK, kdelibs simply links against libusb, no ltdlopen() involved. Regardless, even *if* ltdlopen is used, it will look for libusb.la first, and if not found, try to load libusb.so, but, oops, that's in libusb-devel (right?). Lemme go check my facts.
On second thought, I'm 99% sure you're wrong. If you were right, any KDE user without libidn-devel installed (ie, where libidn.la is), would have a broken system (ie, not being able to ltdlopen() libidn.la), right?
Oops, nevermind, you include libidn.la in the core pkg... because of the runtime ltdlopen?
Yes, that is my understanding. Education welcome. * Tue Jun 22 2004 Than Ngo <than> 0.4.9-2 - add prereq: /sbin/ldconfig - move la file in main package
Can't find any references to loading libidn at runtime in kdelibs, only standard linking. Than, comment? If you're still concerned about the runtime loading, you could still omit libidn.la and include libidn.so in the main pkg to accomplish the same thing.
Joe, due to Than's silence, my opinion is "just do it", and see if anything breaks, and I don't think anything will.
Joe, you can remove *.la from libidn for FC6. Thanks
OK, thanks guys.