Why doesn't Ardour know jack?

I’m on Ubuntu Feisty Fawn…
After loading what seems like every package in the world to build ardour, I can’t get it to see Jack, unless I build it on my computer. When I try to run Ardour that was loaded with apt-get, it won’t see that jack is running. When I run the example clients, they see jack just fine. Then, once I got Ardour to build (not sure why art_alloc was missing from imageframe_view.cc) it worked. So, if I build Jack and Ardour on my machine they know each other and will talk. If I try to run ardour that was built elsewhere, it won’t see that Jack is running.

Mark Jones

Not too familiar with Ubuntu myself, but it sounds like it could be a problem with the path or file permissions of either of the two. I sometimes get that problem when I run one as the superuser, forget and end run the other under my normal user.

I gave up trying to mix and match packages with source a while back. Could never get them to see each other and upgrading to a new version was a pain. Just my opinion, but if you’re installing ardour from source, why not the dependency packages as well? They’re really small and configuring and making them takes only a few minutes each (even on my 6 year old PC!)

I now have a working version after building everything from scratch. Its just the idea of having to do that on every machine I end up using Ardour on that is worrisome. I’m trying to get a feel for what could keep Jack from seeing Ardour if the two weren’t built on the same machine. That part is really baffling.

The same Jack that is running today (and Ardour is happy with) is the same Jack that Ardour (from apt-get) couldn’t see yesterday. I’ve never even restarted the jackd. Now it likes it just fine.

And BTW there are 20 packages I had to build from scratch which is not a trivial task (find the package, build the package…)

Strange, for me running jack from the feisty universe repositories with ardour from svn worked fine. As for the build dependencies, IIRC I installed the dev libs from the repositories as well.

To relieve the hassle of installing all the dependencies manually, you could consider adding the source repositories from ubuntustudio (just src, not the binary repos) to sources.list. Then something like “apt-get build-dep ardour2” should install the required packages from the feisty binary repositories.

The “art_alloc” issue is caused by a mistake made in a “fix” to libart_lgpl about a year ago. Ardour was the first C++ application to report the issue. It was was flagged as “Blocking” in a few linux distros, we expect fixed versions of the packaged version of libart_lgpl to show up soon. Our requirements page should probably suggest avoiding the newer versions of libart_lgpl until this is really fixed and the fix is widespread.

Is there any reason you need to compile from source? The Ubuntu Studio repos have working Ardour and JACK packages.

That repo is deb http://archive.ubuntustudio.org/ubuntustudio feisty main

with GPG from http://archive.ubuntustudio.org/ubuntustudio.gpg

The reason Ardour didn’t “know” Jack is that the jack version I built was v 0.103.0 instead of 0.102.0 and since those have a different shared memory signature, they can’t play together.

To me it seems like it should have discovered the incompatible version and complained about that.

To me it seems like it should have discovered the incompatible version and complained about that.

That might be a good entry for the Issue Tracker.