On 01/04/2013 10:58 PM, Kenno Han wrote: > Some package require you to build the whole dependency chain > from scratch, this mostly happens if there is a major change > (i.e. GTK+ 2 to GTK+ 3). > However for most cases, you would only need to build that package. >
That's wrong. GTK+2 apps are not compatible with GTK+3 apps. Both GTK+2 and GTK+3 can exist on one system. However, you need to rebuild everything when a library "Breaks API". One example is libffi 3.0.10 to 3.0.11 upgrade, where libffi.so.5 became libffi.so.6 and everything that used libffi was required to be rebuilt. However, you didn't need to rebuild all packages, but only packages that are implicitly linked to libffi. If package is explicitly linked to some library (the package does not use any of it's functions, but instead it is linked to the library that requires libffi) you will need only to rebuild package that has direct dependency on a library first and then recheck again if other packages are explicitly or implicitly linked to the upgraded library. Again, speaking of libffi, Glib uses it's functions and it is linked to it. Any package that is linked to glib itself (libgobject-2.0 library to be precise) will show libffi in it's ldd output, but only glib libraries use it. If you rebuild Glib against new libffi, all packages that use Glib will show that they are "linked" to same version, unless they have implicit dependency on libffi, in which case ldd will tell that package is linked to same library twice, but with diferent soname. (like gobject-introspection - it has implicit dependency on libffi). -- http://linuxfromscratch.org/mailman/listinfo/blfs-support FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
