--- On Sun, 8/5/12, Aere Greenway <address@hidden> wrote:
> Given the problems I had getting qjackctl to co-exist with
> the generated
> version of fluidsynth, I am puzzled by why I had no problems
> with my
> Ubuntu partition. My guesses why are as follows:
>
> 1. I had previously done some testing of a Rosegarden fix,
> and it has
> similar dependencies to fluidsynth. Notably, it wants
> jackd1 (rather
> than jackd2, which qjackctl causes to be installed).
> All this was
> in-place and working before I attempted to build
> fluidsynth.
>
> 2. I am using Ubuntu, rather than Xubuntu.
I don't use Ubunto, nor Xubuntu, so I don't know the current "version" various packages like libjack, qjackctl... and pre-requisites of each of those.
I use Debian Sid (Unstable repository), so the version of various packages available there are fairly recent. For example qjackctl in Sid would probably want jackd2.
However, Debian Stable repository would (more likely) have much older "version" of qjackctl and related pre-requisite packages.
I mention that just as an example. And everytime there is an update to the repository, some of those packages may require different pre-requisites. So some of your currently installed packages will get out of sync with the repositories, until you decide to install the latest and greatest version for each of those packages.
In your case, it may not be fluidsynth and qjackctl which causes the dependency issues. It might be some other music related packages that you were playing with.
I saw in one of your other posts mentioned:
libjack-dev
which I believe might be a set of jack 1.x development header files. If that is true, that package would require libjack 1.x libraries package, which cannot be installed concurrently with any jack 2.0 packages, at least from the perspective of the repository installation script when it tries to verify pre-requisites.
I suppose you were toying with some apps that was still using jack 1.0 sometime ago which needed the jack 1.0 header files to compile. So that package was installed in the system was still there.
Currently, most music packages that use jack do use jack 2.x. And the repository won't let you do that because jack 1.x and jack 2.x are mutully exclusive. It won't automatically remove all of jack 1.x packages and additional packages which need jack 1.x. The sticking point in your case was probably
libjack-dev
note that libjack-dev also need libjack0. What you need to do is to explicitly remove all the jack 1.x packages, then go ahead and install any jack 2.x packages that you want. The equivelance jack 2.x of that would be
libjack-jackd2-dev
which needs libjack-jackd2-0 package. When you try to remove all jack 1.x packages, it will also tell you what other packages were "also" to be removed, those would be the packages that depends on those jack 1.x packages.
After installing jack 2.x packages you want, you can try to manually install those packages (not Jack itself) which were removed when you remove jack 1.x. I run
apt-get -d install somepackage
the "-d" say to download only. Which will show you what packages it would install or remove if it is to install "somepackage". If it won't remove any of the new jack 2.x packages, then I would let it completely download all the files it need. Then run:
apt-get install somepackage
which is the same command without the "-d" to go ahead and install "somepackage".
So yes, while you were removing and purging some of those packages, it finally remove enough of jack 1.x packages to let you install jack 2.x in the system. The reverse is also true. If any packages which explicitely require some jack 1.x but not compatible with jack 2.x will not install if jack 2.x is already in the system until you explicitely remove jack 2.x.
Jimmy