F8T3 portaudio-19-3.fc8 dependency bug?

Jerry Williams jwilliam at xmission.com
Sun Oct 14 01:50:38 UTC 2007


Okay thanks for the answers!
So no bug.
I did find that crrcsim has newer code to deal with portaudio v19.
So just need to recompile crrcsim and I should be good.
Thanks again,
Jerry

> -----Original Message-----
> From: fedora-test-list-bounces at redhat.com [mailto:fedora-test-list-
> bounces at redhat.com] On Behalf Of Michael Schwendt
> Sent: Saturday, October 13, 2007 3:35 PM
> To: fedora-test-list at redhat.com
> Subject: Re: F8T3 portaudio-19-3.fc8 dependency bug?
> 
> On Sat, 13 Oct 2007 13:50:39 -0600, Jerry Williams wrote:
> 
> > I think the answers are going in the wrong direction.
> 
> No.
> 
> > And maybe this isn't about portaudio at all, but more of a dependency
> > problem.
> 
> No. :)
> 
> > I have a binary crrcsim-0.9.8-1.fc6.i386.rpm that was built on Fedora
> Core
> > 6.
> 
> Are PortAudio v18 and v19 compatible?
> 
> On Fedora 6 and 7 we have the old v18 with no SONAME, i.e. a
> libportaudio.so with _no_ soname.
> 
> On Fedora 8 devel we have the newer v19 with a SONAME:
> libportaudio.so.2
> 
> The change in the library soname -- think of it as an identifier
> inside the library headers -- makes the two library releases
> incompatible already, even if creating a link for the old name might
> work (when the two libraries are ABI-compatible except for their
> sonames).
> 
> > It installs just fine on Fedora 7, but that could be because when I
> enter
> > the command rpm -q portaudio returns portaudio-18.1-8.fc6.
> >
> > When I try and install it on Fedora 8 Test 3 it complains:
> > error: Failed dependencies:
> > 	libportaudio.so is needed by crrcsim-0.9.8-1.fc6.i386
> > and it won't install.
> 
> The application is linked against the old PortAudio v18 and hence
> requires the old library soname. That old soname is only provided
> by RPM packages which contain the old PortAudio v18 library.
> 
> > And I think that is a bug of some kind because there is a
> > /usr/lib/libportaudio.so or at least a file that is a link.
> 
> That symlink is only to be used during building of software, not
> at run-time. At run-time the versioned libportaudio.so.2* are
> to be used, since applications are linked against them.
> 
> > And it does work if I install crrcsim with the --nodeps option.
> >
> > So am I just lucky that it works?
> 
> Either that, or PortAudio has stayed ABI- and API-compatible between
> v18 and v19. Its API is from 2004 or so.
> 
> > Should something be changed so that it satisfies the libportaudio.so
> 
> No.
> 
> > and so
> > it should let crrcsim install without having to use the --nodeps option?
> 
> crrcsim ought to be rebuilt to link against the proper library, i.e
> the v19 PortAudio.
> 
> > And I guess I don't understand the stuff below about sonames and such.
> > Why does it matter if I list the whole path or not?
> 
> In addition to the list of files (incl. absolute paths) in a package,
> shared-library packages contain information in the RPM data about what
> library "name" they make available to the system. Only if you know
> that "rpm -q --whatprovides libfoo.so.2" is a query about a library
> soname, you know that it is not equivalent to "rpm -q --whatprovides
> /usr/lib/libfoo.so.4" which is a query about a file. So, even if you
> have a file/link called /usr/lib/libfoo.so, it might only point to
> a library with a versioned soname like "libfoo.so.4".
> 
> > So is it the fact that on Fedora 8 I have version 2 of libportaudio.so
> and
> > on Fedora 7 I have version 1 or none and that the link in the devel
> package
> > is there so that things that require libportaudio.so will compile
> against
> > version 2, but the rpm wants to keep thing that where compiled against
> > version 1 to fail install because they might not work?
> 
> RPM simply wants a package that offers the needed library soname, and
> in PortAudio v19 that name has changed to contain a version, "2".
> 
> --
> fedora-test-list mailing list
> fedora-test-list at redhat.com
> To unsubscribe:
> https://www.redhat.com/mailman/listinfo/fedora-test-list




More information about the fedora-test-list mailing list