On Sun, 16 Sep 2012 20:19:56 +0200, Alessandro Ghedini wrote: Ciao Alessandro,
thanks alot for taking the time to shed some light here! > > > So not linking to any curl lib doesn't look right ... > > That could be done, as long as all the applications linking directly or > > indirectly to liboauth link to a suitable libcurl too (i.e. leaving all the > > libcurl symbols unresolved in liboauth). AFAICT this is currently not > > enforced > > since e.g. oauth.pc only lists libcurl as Requires.private. Ok. > > Directly depending on libcurl3* packages is of no use: either the > > application > > links to a libcurl flavour, in which case it would already Depends on a > > suitable > > libcurl3 package, or it doesn't and it wouldn't pick up the library even if > > installed Makes sense ... But liboauth does link (and therefore depend on) one of the curl libs, unless forced to do otherwise. > > Also note that libcurl3* libraries are not interchangeable, since they have > > different SONAMEs and symbols versioning (i.e. once you link against one of > > them at compile time, you have to use the same to resolve libcurl symbols at > > load time). Ack. > To wrap this up: having "Depends: ..., libcurl4-gnutls-dev | libcurl4-dev, > ..." > in liboauth-dev IMO is the simplest and most effective solution to the problem > exposed (libcurl4*-dev conflicts). If I'm understanding KURASHIKI Satoru and HAMANO Tsukasa correctly, they are also not happy about the dependency of liboauth0 on one of the curl libs. - Not sure about the background here. What I've done now, since I'm more interested in #650138 actually :) - Rebuild libouth whith only this change: diff -Nru liboauth-0.9.4/debian/control liboauth-0.9.4/debian/control --- liboauth-0.9.4/debian/control 2011-11-05 12:41:07.000000000 +0100 +++ liboauth-0.9.4/debian/control 2012-09-17 17:00:50.000000000 +0200 @@ -16,7 +16,7 @@ Package: liboauth-dev Section: libdevel Architecture: any -Depends: liboauth0 (= ${binary:Version}), libcurl4-nss-dev, ${misc:Depends} +Depends: liboauth0 (= ${binary:Version}), libcurl4-nss-dev | libcurl4-dev, libnss3-dev, ${misc:Depends} Description: C library for implementing OAuth 1.0 (development files) liboauth is a collection of C functions implementing the This leads to: liboauth-dev_0.9.4-3.1_amd64.deb Depends: liboauth0 (= 0.9.4-3.1), libcurl4-nss-dev | libcurl4-dev, libnss3-dev liboauth0_0.9.4-3.1_amd64.deb Depends: libc6 (>= 2.4), libcurl3-nss (>= 7.23.1), libnss3 (>= 2:3.13.4-2~) | libnss3-1d (>= 3.12.0~1.9b1) and % ldd /usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 | grep curl libcurl-nss.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-nss.so.4 (0x00007f9e8d2e8000) - Install liboauth0. Result: bti still fails as in #650138. - Rebuild bti (with libcurl4-gnutls-dev insted of libcurl4-nss-dev. Results: bti_032-2_amd64.deb Depends: libc6 (>= 2.3), libcurl3-gnutls (>= 7.16.2), liboauth0 (>= 0.9.1), libpcre3 (>= 8.10), libxml2 (>= 2.7.4) % ldd /usr/bin/bti | grep curl libcurl-gnutls.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007f8a757df000) libcurl-nss.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-nss.so.4 (0x00007f8a729ed000) - Install rebuilt bti. Sill fails. My "experiment" from late July still works: Rebuilding liboauth with libcurl4-gnutls-dev instead of -nss- works with the "old" bti (and also with a rebuilt one). No sure what to make of this -- I'm confused :) Cheers, gregor -- .''`. Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06 : :' : Debian GNU/Linux user, admin, and developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe `- NP: Cat Stevens: Sweet Jamaica
signature.asc
Description: Digital signature