Building (Linux) with options -no-lxvst --no-windows-vst fails

Hi,

in a further post I tried to find out how to “disable” vst-plugins completely.

Doing this via build-without-it seemed the best way, but using “-no-lxvst --no-windows-vst”
shows an error :slight_smile:
—snipp—
harry@studio-ThinkPad-T430:/opt/make/Ardour-7.2.0$ ./waf
Waf: Entering directory `/opt/make/Ardour-7.2.0/build’
Using packaged revision
Generating po/de.po
Generating po/eu.po
Generating po/fr.po
Generating po/it.po
Generating po/ja.po
Generating po/ko.po
Generating po/ru.po
Generating po/zh.po
Generating /opt/make/Ardour-7.2.0/gtk2_ardour/ardour.appdata.xml.in
[1240/1311] Linking build/gtk2_ardour/ardour-7.2.0
[1243/1311] Linking build/headless/hardour-7.2.0
[1245/1311] Linking build/luasession/luasession
[1246/1311] Compiling session_utils/common.cc
/usr/bin/ld: gtk2_ardour/screensaver.cc.1.o: undefined reference to symbol ‘XResetScreenSaver’
/usr/bin/ld: /lib/x86_64-linux-gnu/libX11.so.6: Fehler beim Hinzufügen von Symbolen: DSO missing from command line
collect2: error: ld returned 1 exit status

Waf: Leaving directory `/opt/make/Ardour-7.2.0/build’
Build failed
→ task in ‘ardour-7.2.0’ failed with exit status 1 (run with -v to display more information)
—snipp—
This is part of the script I use to build ardour.
The script first was used building a 5.x ardour and since then has only minimaly changed :
—snipp—
./waf configure --prefix=${IPATH} --optimize --freedesktop --canvasui --docs --test --lxvst --phone-home --run-tests --nls --no-lxvst --no-windows-vst
&& ./waf && ./waf i18n
—snipp—

So, not including “-no-lxvst --no-windows-vst” works fine.
—snipp—

Generating po/pt.po
Generating po/ru.po
Generating po/zh.po
Waf: Leaving directory `/opt/make/Ardour-7.2.0/build’
‘i18n’ finished successfully (3.950s)
harry@studio-ThinkPad-T430:/opt/make/Ardour-7.2.0$
—snipp—

What the hell has not including vst to do with the screensaver ?

Best regards
Harry

PS.: So, you may ask, why I aways go the hard way by building ardour ?
I want an application (which I really use/like much) to be optimally customized for my system.
The build-process shows all the system dependencies and it’s on me to fulfill them best.
After a successful build I have the certainty it can’t be better than this build :slight_smile:

It might have to do with the fact that VST plug-ins require X11 for their UIs - perhaps by compiling without VST support you are building ardour without any linkage to X11 / XLib etc, which then causes that call to XResetScreenSaver to fail. Why do you need to compile without VST plug-in support? If you just want to disable plug-ins (for debug) you can do so in the preferences. Otherwise, if you have an aversion to VST plug-ins specifically, just don’t use them.

Your configure line has both --lxvst and --no-lxvst. Perhaps that trips a logic error in the configure script.
I also think --no-windows-vst is not needed for a Linux build, since Windows plugins are not supported by default.

Ooops …
I was sure this was the reason, changed it to --no-lxvst only … but:

– snipp –
[1242/1311] Compiling luasession/luasession.cc
[1243/1311] Compiling session_utils/copy-mixer.cc
[1244/1311] Linking build/gtk2_ardour/ardour-7.2.0
/usr/bin/ld: gtk2_ardour/screensaver.cc.1.o: undefined reference to symbol ‘XResetScreenSaver’
/usr/bin/ld: /lib/x86_64-linux-gnu/libX11.so.6: Fehler beim Hinzufügen von Symbolen: DSO missing from command line
collect2: error: ld returned 1 exit status

Waf: Leaving directory `/opt/make/Ardour-7.2.0/build’
Build failed
→ task in ‘ardour-7.2.0’ failed with exit status 1 (run with -v to display more information)
harry@studio-ThinkPad-T430:/opt/make/Ardour-7.2.0$
– snipp –
–no-lxvst is causing the problem
:expressionless:

Yep. Looks like nobody noticed this before. Fixed now in git.

1 Like

So, 7.3 will have the fix included.
I’m impatiently waiting for the update :slight_smile:
Sometimes I feel like a truffle dog when I find those obscure bugs. :wink:

I tested an actual git-cloned build.
The bug has left the sources :wink:

Best regards and thanks to Robin for the quick fix.

Best regards
Harry