Re: [Jack-Devel] lib{j, tsch}ack{, 1, 2} [Was: Jack "capsule/container" implementation?]

PrevNext  Index
DateThu, 10 Feb 2011 19:16:37 +0100
From Dominique Michel <[hidden] at vtxnet dot ch>
To[hidden] at lists dot jackaudio dot org
Follow-Uphermann Re: [Jack-Devel] lib{j, tsch}ack{, 1, 2} [Was: Jack "capsule/container" implementation?]
Follow-UpPaul Davis Re: [Jack-Devel] lib{j, tsch}ack{, 1, 2} [Was: Jack "capsule/container" implementation?]
Le Wed, 9 Feb 2011 21:48:05 -0600,
"Gabriel M. Beddingfield" <[hidden]> a écrit :

> On Wednesday, February 09, 2011 07:18:24 pm Paul Davis wrote:
> > On Wed, Feb 9, 2011 at 7:06 PM, Arne Jacobs
> > <[hidden]> wrote:
> > > If there was, however, an implementation of the JACK
> > > API to which applications could link to instead of
> > > libjack1 or libjack2, that
> > 
> > i'll have more to say later, but to continue harping on a
> > favored theme of mine, there is no "libjack1" or
> > "libjack2". there is "libjack" and all implementations
> > of it should be interchangeable with any other.
> > 
> > i know this was not your point at all, but i am finding
> > it increasingly important to correct minor errors like
> > this that have had a habit of spreading around online.
> 
> Yes... but... the distro's don't exactly believe you (and with good
> reason).
> 
> For example, comparing the headers between Jack1 and Jack2 is a diff
> with 4000 lines differing.  You can view it here:
> http://pastebin.com/JgNMhTeU [1]  Also the libjack.so created by the
> different implementations have symbols exported that do not match.
> 
> With distro's cracking down on ABI breakage... this is hard to audit.

As gentoo pro-audio overlay developer, we don't care at all about this
header difference. The fact is that gentoo + the pro-audio overlay
provide different ebuilds (even git ones) for both jack1 and jack2. It
is up to the user to install the version of jack he want/need to
install. And any jack aware program will just work with it. Why should
we care when it is an ideal situation from our POV, as well than from
the users POV.

So please, don't talk about an ABI breakage. The problem for distros
like debian and all the other ones based on deb or rpm packaging, is
that it is difficult to make 2 versions of the same program to coexist.
This is not a problem with gentoo.

With gentoo, the dependences are not pre-compiled on a distant server
but what have been compiled and installed into the machine by portage.
You can change the dependences (as example, an extreme case, move from
jack1 to jack2), a single command "revdep-rebuild" will recompile the
programs against the new dependencies and fix the whole system,

I have used many distros, but no one other mainstream distribution
provide me this advantage, and this is due to the packaging system. The
advantage of this is not only than you can tailor your system for your
machine and get the last per cent of the possible speed, but also that
your system will always remain consistent and stable. The disadvantage
is that the user must know what he/she is doing. In other words, the
user must take the time to read, understand and follow the docs.

A last word, if you have problem with xxx version of jack on a deb or
rpm distro, consider to contribute (if it is not already the case) to
that distro. This issue will be due to limitation of their packaging
system. Limitation that imply than more man power is needed to archive
results that can be obvious with a packaging system that compile
all from the sources into the user's machine.

Ciao,
Dominique

-- 
"We have the heroes we deserve."
PrevNext  Index

1297361991.6683_0.ltw:2,a <20110210191637.4f0ddd26 at tuxstudio dot homenetwork>