View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0007903||ardour||bugs||public||2020-02-20 22:11||2020-05-06 18:45|
|Platform||Windows 10||OS||Windows||OS Version||10|
|Summary||0007903: Audio/Midi Setup fails to launch JACK on windows due to path issues|
|Description||Ardour can not start JACK from the Audio/Midi Setup dialog because it appears to be using an invalid path for the jackd server.|
|Steps To Reproduce||window 10 - 64 bit|
It installs to "Program Files (x86)"
NOTE: It contains both 32bit and 64bit binaries
Started Ardour/Mixbus from a command prompt and tried to start jack which give this error in the terminal
Execution of JACK server (command = "C:/Program Files/Jack/jackd.exe") failed: No such file or directory
If jack is started manually then ardour/mixbus finds is and seems to work. The issue is just with Ardour starting Jack.
|Tags||No tags attached.|
A few years ago I pushed a fix for this (to Ardour) and it got rejected for some reason - though I've continued to use it here and it works fine.
If you'd like to test it Todd, I'm happy to push it to Mixbus. It's a very simple fix and could easily be backported to Ardour (or easily removed if it doesn't work).
Please do not push to Mixbus/git at this point in time (first week of May 2020).
Also, since Mixbus6, all changes that do not concern the mixer-window should happen in Arodur first.
As for the actual issue. This was a bug in jack's installer. The 64bit version should install to "Program Files" not ""Program Files (x86)". jack 1.9.11 was a unstable test release (jack2 uses even minor numbers for release) and is several years old now.
||Ah, perhaps that's it... maybe my code fixed it for Jack1.9 but breaks it for Jack2|
Would it be feasible to set a search path, and have look for jackd.exe in various locations?
Can it hurt is 64bit ardour accidentally starts 32bit jack?
||I've forwarded this to https://github.com/jackaudio/jack2/issues/574|
I tested this today and I think I've realised why my fix got rejected (it would have been ineffective for a gcc build....)
In 'backends/jack/jack_utils.cc' we have 'ARDOUR::get_jack_server_dir_paths()' which tries to calculate the jack server path - BUT - on Windows it looks like this:-
// N.B. The #define (immediately below) can be safely removed once we know that this code builds okay with mingw
// path calculation code
It looks like there was an intention to test if the code compiles with gcc but we must have forgotten about it once the mingw build changed to a cross-compilation. If you can test if that code compiles okay for you I could re-submit the other part of my fix.
Also, regarding 32-bit / 64-bit,... it might be different for Jack2 but for Jack 1.9 I've a (hazy) recollection that a 32-bit client will work with a 64-bit server but I don't think I tested it the other way around (I could test that sometime if necessary).
Groan... after a bit more testing I've realised that the above code was only relevant to Mixbus ver2. Back in those days, MB needed to install its own bundled version of Jack and it's the bundled copy which gets found by the above code (obviously that's not relevant these days).
However, if Jack happens to add itself to the user's PATH, that also gets searched if there's no bundled version
|2020-02-20 22:11||tnaugle||New Issue|
|2020-05-04 10:35||johne53||Note Added: 0024058|
|2020-05-04 21:49||x42||Note Added: 0024064|
|2020-05-05 07:39||johne53||Note Added: 0024069|
|2020-05-05 15:04||x42||Note Added: 0024070|
|2020-05-05 15:12||x42||Note Added: 0024071|
|2020-05-06 06:28||johne53||Note Added: 0024081|
|2020-05-06 10:32||johne53||Note Added: 0024083|