On Thursday 2013-10-24 14:15, Koehne Kai wrote: > >I'm a developer working on Qt.[...] >https://bugreports.qt-project.org/browse/QTBUG-34176 [is] one of the >problems we still have[,] to fix is our libudev.so.0 dependency ... >That is, we're building the packages on Ubuntu 11.10 and link >against system libudev.so.0 , while some modern distributions are >(solely) providing libudev.so.1.
#34176 is an old hat: in general, you must ship all the dependent libraries with your program package, because your program has been built against exactly those and there is no guarantee the target system has any of them, or a particular version. Symlinking does not fix that and is an error, because symlinks do not make the potentially changed ABI (which is reflected in the number switch) magically available. In case of udev, as has already been said in this thread, just providing it is not enough, which brings us to: >So, to overcome this we've been thinking about building & shipping >our own copy of libudev (renamed , or statically linked, to avoid >clashes) ... Would you expect such a pristine version of libudev, >compiled on distribution A , to work flawlessly on distribution B? >What problems would you anticipate? On the total contrary. To overcome this, you ought to build one package per distro-version, with Open Build Service being one possible way to get there. This actually has multiple benefits: you would no longer need to ship libraries, because you can rely on what the base system already, as such, you would not even need to worry about udev any longer either, and third you also make the users happy because they get a native archive instead of {some unmanaged .run or a foreign .deb/.rpm that might or might not work}. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel