Building Rack with pipewire fails

thanks for your ideas. will wait, if anyone manage it to run Rack with pipewire.

Regards

I’ve just built Rack on Arch with pipewire and it’s working fine for me, I can see alsa, pipewire and jack outputs.

Fedora 37 Workstation:
I got it to continue building by making a link to libjack.so somewhere ld looks:
hint: ld -ljack --verbose


Here is what I did on a clean Fedora 37 workstation install:

sudo dnf group install "C Development Tools and Libraries" "Development Tools"
sudo dnf install cmake mesa-libGLU-devel libXrandr-devel libXinerama-devel libXcursor-devel libXi-devel perl-FindBin.noarch pipewire-jack-audio-connection-kit-devel alsa-lib-devel pulseaudio-libs-devel libstdc++-static discount

sudo ln -s /usr/lib64/pipewire-0.3/jack/libjack.so.0 /usr/lib64/libjack.so

mkdir ~/github
cd ~/github
git clone http://github.com/vcvrack/Rack
cd Rack/
git submodule update --init --recursive
make -j4 dep
make -j4
cd plugins
git clone http://github.com/vcvrack/Fundamental
cd Fundamental
make -j4
make dist
cd ../..
make dist

cd dist/Rack2Free
./Rack&

Rack 2.2.1 Free on Fedora 37 Workstation using the pipewire jack connection. (in a Virtualbox on Windows 11)

hello again, some good and bad news :frowning:

i successfully build rack here with fedora 36. the link helps to find jack. but unfortunately the audio and midi connections are not shown or strange:

  1. after starting rack, only alsa devices are shown. this is strange, because rack should display ports inside pipewire. usually all alsa devices are shown in pipewire, because they are emulated.
  2. if i connect my bluetooth headphone, it is shown as jack device inside pipewire, but no alsa devices anymore.

does anyone knows how to dig into?

regards

did you have these installed ?

yes, i use them for most audio software compiling. i’m not a developer, but i think, that rack is using some low-level functions from jack / alsa. because usually alsa is not available, if pipewire is activiated. other software is just show up in qpwgraph with ports. temporally i compiled rack without alsa support. result is, that alsa is not available (sure), but no ports in pipewire, especially no output ports. input-ports are shown from mutter??? does it help?

Hi @karlderletzte, I don’t know anything about pipewire (or development for it), but I thought I would post this in case it is helpful. What version of the C++ compiler are you using?

I ran into problems building Rack that can load most plugins. It turns out the problem was I was using g++ older than version 12.2.0, which caused more than half of my installed plugins to fail to load. I know this is not the same as your problem, but… maybe it’s useful?

I ended up building g++ 12.2.0 from source. Then I used that to build Rack. Now I have a fully functional VCV Rack built from source.

Also, have you looked in your log.txt for any clues you can post here?

hi, gcc is 12.2.1 which log.txt do you mean?

When you run Rack, it creates a log in its user folder. On Linux it is usually in $HOME/.Rack2/log.txt.

ok, isee. here is the log after start jack with jack. log.txt (25.7 KB)

and here is the screenshot from pipewire.

as you can see, no ports from rack :frowning:

hope it helps

Hmm, I didn’t see anything interesting in the log file. Maybe someone else knows more about this?

Did you make any audio connections in an audio module ?

no audio module.

audio module - Alsa + device selected:

audio module - Pulsewire + device selected:

audio module - Jack device selected:

hello, this is exactly the problem here. if you see, there are no vcv ports.

i dont know why. no errors during compiling and log shows nothing sprecial :frowning:

this happens, if i connect with an input port. VCV is show with connection to microphone, but no output ports.

i guess that something is wrong with detection of available output ports?

It works here on Fedora 37 it seems. Maybe something in Fedora 36 ?

perhaps a bug?
https://www.reddit.com/r/archlinux/comments/x78fka/i_broke_my_audio/

today i upgraded my fedora to 37. without any modifications to my system i recompiled rack and deps. now i can connect pulseaudio out ports from rack, but again no jack connections possible. the strange thing is, that my other rack clone cardinal works out of the box with jack under pipewire on fedora 36. i will use pulseaudio ports from rack for now. perhaps anybody knows a bit in-depth details how i could solve this. unfortunately i do not understand the different output from the pipewire tools. is any pipewire in-depth user here?

Ubuntu seems to be the preferred system for VCV. Ubuntu changed to pipewire from 22.10. So perhaps it will work soon™.

https://changelogs.ubuntu.com/changelogs/pool/main/u/ubuntu-meta/ubuntu-meta_1.497/changelog#:~:text=*%20Added%20pipewire-pulse%20to%20desktop%2C%20desktop-minimal

May be better to avoid pipewire for now.

No planned pipewire for Rtaudio

Maturity of pipewire(?)