Undefined Symbol Error on Linux

Hey, I’ve been recently building a better development environment for myself and built an Arch partition dedicated to it. I’ve slowly fixed every problem derived from this decision, and managed to get it to build on Linux too (I have no problems building cross-platform using github’s workflow) but VCV wont load the plugin built on the machine:

[0.031 warn src/plugin.cpp:199 loadPlugin] Could not load plugin /home/unwn/.local/share/Rack2/plugins-lin-x64/UNWN: Failed to load library /home/unwn/.local/share/Rack2/plugins-lin-x64/UNWN/plugin.so: /home/unwn/.local/share/Rack2/plugins-lin-x64/UNWN/plugin.so: undefined symbol: _ZNSt8ios_base4Init11_S_refcountE

_ZNSt8ios_base4Init11_S_refcountE is the mangled name for std::ios_base::Init::_S_refcount

the Github’s build loads and works without any issue, and doing an nm on the plugin.so shows that the undefined symbol is not present on this version.

Heres the make output: pastebin.com

Did you build vcv yourself also or use the download version? And did you build the GitHub plugin in the toolchain?

There’s a problem that rack built on arch raw has a different libc than the toolchain and you either need to use arch both or toolchain both. (You can get the toolchain rack by downloading it).

(Read more Neither SurgeXT nor VCV Free plugins are installing/updating in VCVRack (Arch Linux 6.3.x) - #51 by relyt29 here )

1 Like

yes I was using the AUR to build vcvrack, I just removed it and replaced with the bin version and now it launches fine!

I hyper-focused a whole day on this, I was losing my mind, Thanks!

I don’t know what needs to happen to convince the maintainers of the non bin rack package to remove it. As you can see I’ve let them know several times. But having an aur package which has been obviously broken for quite a long time is a bummer. Maybe you could also inform them?

But Glad I could help by flagging it to you.

2 Likes