jack2 icon indicating copy to clipboard operation
jack2 copied to clipboard

Missleading error message in combination with Portaudio

Open daschuer opened this issue 1 year ago • 0 comments

Describe the bug

When using Mixxx with Portaudio on macOS the following error message is logged into the console output:

dlopen error : dlopen(libjack.0.dylib, 0x0001): tried: 'libjack.0.dylib' (no such file), '/usr/local/lib/libjack.0.dylib' (no such file), '/usr/lib/libjack.0.dylib' (no such file), '/Users/runner/work/mixxx/mixxx/libjack.0.dylib' (no such file) 
dlopen error : dlopen(/usr/local/lib/libjack.0.dylib, 0x0001): tried: '/usr/local/lib/libjack.0.dylib' (no such file) 

Since the term "error" is involed it is a concerning issue for our users.

This appears in the phase when Portaudio is probing which API is installed. https://github.com/jackaudio/jack2/blob/c46c1b16e0eabbcf55ef69b0ffb96dfe16521cfa/common/JackWeakAPI.c#L55

The result in Mixxx is combobox with all avaliable audi APIs populated. All other APIs do not issue an error in this case and are silence. I think Jack should do the same.

Writing to stderr from a general-purpose library is generally discouraged for several reasons. A message that is perfectly valid for a specific view ow the library developer does not always fit to the context in which the library is used.

Can we remove that output?

Here is the related Mixxx issue: https://github.com/mixxxdj/mixxx/pull/13296

Environment

  • JACK Version: 1.9

  • Operating System: macOS 11

  • Installation: Via VCPKG

Steps To Reproduce

Run the mixxx test mentioned in https://github.com/mixxxdj/mixxx/pull/13296

Expected vs. actual behavior

The error mentioned above should not be written during probing for jack.

daschuer avatar May 31 '24 08:05 daschuer