
Hi, On Wed, 13 May 2009, Sascha 'saigkill' Manns wrote:
in my packman package I worked around this problem with packaging both *.so and *.so.* in the lib-pacakges (because I'm too lazy to fix this ...)
Don't do this please. If you're too lazy that's okay, but don't advise this to others.
I'm using the following:
%files -n libskgbasegui1 %defattr(-, root, root) %{_libdir}/libskgbasegui.so.*
%files devel %defattr(-, root, root) %{_libdir}/libskgbankgui.so %{_libdir}/libskgbankmodeler.so %{_libdir}/libskgbasegui.so %{_libdir}/libskgbasemodeler.so %{_libdir}/kde4/plugins/designer/libskgbasegui.so
You need to move the last file (the one in .../kde4/plugins/...) to the libskgbasegui1 package. It is an *.so file, so your initial intuition to put it into a -devel package was correct. But in this case it's a plugin, not a shared library, so it needs to be part of the base package as it's required at runtime, not to build against. That will fix the immediate problem. But this whole skrooge thingy is highly dubious. Plugins are not supposed to be reachable from /usr/lib (which it here is via the versioned libskgbasegui.so.* links), they are not supposed to be linked against either (again possible here via the %{_libdir}/libskgbasegui.so link). They are supposed to be loaded via a plugin loader at runtime, and in that case those links in %{_libdir}/*.so.* are not required. When I look at the other librararies in there, though, it seems as if also libskgbasegui.so isn't actually supposed to be a plugin from the start. This is also supported by the fact that the application actually links (in the ld.so sense) against this library/plugin/mixup. But this all needs to be sorted out by upstream. For now it's enough if you provide the plugin in the lib package (not the other *.so files, only the plugin). It is possible that you need to add an exception for rpmlint anyway, because it is named 'lib<something>'. Normally rpmlint should detect that this is only a plugin and not bitch about packaging *.so files in non-devel packages. But you'll need to try. Ciao, Michael. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org