On Wed, 2007-04-18 at 10:33 -0500, Josh Lawrence
wrote:
hello list,
first off, I'm running debian etch, and installing everything via
packages (sans the kernel).
last night I decided I wanted to try out the sequencer dino, which
requires a later version of jack than my repos offer. I uninstalled
jack (which uninstalled other jack applications), and compiled the
newest version of jack and qjackctl. this is where the problem
started...
now when I want to add a package from the repos, it wants to install
the repos version of jack, and won't simply use the version I have
compiled. conflicts abound, and the net effect is that all jack apps
are not working at the moment.
there must be some way in debian to say, "don't worry about the jackd
dependency, I've already got that installed." or am I doomed to
compile everything from source now that I've compiled jack from
source? is it all or nothing?
This is how I do it:
1. Install the latest Debian package (using 'apt-get install
libjack0.100.0-0')
2. Get the JACK source package you need, configure it with
--prefix=/usr, build it and install it (without uninstalling the Debian
package)
3. Remove all files starting with libjack-0.100.0 in /usr/lib
4. Create a symbolic link: /usr/lib/libjack-0.100.0.so.0
-> /usr/lib/libjack.so
Done. Now old JACK programs from Debian packages should work (since the
database thinks that the JACK packages are still installed, although
they really have been overwritten) and programs requiring the newer API
(MIDI etc) should also work. If the libjack ABI ever becomes
incompatible with the old one your Debian packaged JACK clients may
start acting weird though.
Also, your JACK-from-source installation will be overwritten if you do
apt-get upgrade and there are newer JACK packages than the one you have
installed. But all you have to do then is to reinstall your source
build.
you can put the /overridden/ jack package into "hold" mode (eg. by
pressing '=' on libjack in dselect) - no more updates for that package.
There are probably cleaner ways to do this (like
copying over the debian
subdirectory from a Debian source package to your new tarball and build
a proper Debian package), but this works reasonably well for me.
it's not *that* easy. debian applies a couple of patches..
#robin