-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jakub 'Livio' Rusinek wrote:
Dnia 2008-08-06, [ro o godzinie 12:45 -0600, Andrew Jorgensen pisze:
The shared library policy says:
- Avoid packaging libtool config files (.la files). In general they are not needed if you do not package a static library. If in doubt, ask.
Most KDE packages need them if made by libtool.
Another issue is that there are several projects out there that use
libtool at runtime (libltdl) to load libraries and plugins (shlibs).
Those need the .la files as they contain the metadata used by libltdl to
do the dlopen (dynamic shlib loading).
A solid indication that a package requires the .la files at runtime is
when the binaries (shlibs, executables) have been linked against libltdl.so
One can trace that down using ldd, or my ldd2rpm script [1] (just make
sure to run it against all relevant files: *.so, *.so.*, bin/*)
Note that rpmbuild also collects that sort of information, so doing a
"rpm --qp --requires foo-1.0.0-1.x86_64.rpm|grep libltdl" would work
too, but only post-mort^Wbuild.
[1]http://linux01.gwdg.de/~pbleser/files/rpm/ldd2rpm
But, to get back to your original question: no, there is no way (I'm
aware of) to avoid installing the .la files.
Removing them with %__rm in the %install section after %makeinstall is
the appropriate way to handle this, e.g.:
%install
%makeinstall
%__rm "%{buildroot}%{_libdir}"/*.{a,la}
(although building+installing the static libs can usually be suppressed
by passing --disable-static to %configure, but why bother, you have to
remove the .la files anyway, it would just save you an "ar" run, which
is very fast)
cheers
- --
-o) Pascal Bleser