steinbergmedia / vstgui

A user interface toolkit mainly for audio plug-ins
Other
850 stars 121 forks source link

Build error while compiling vst3sdk on Fedora 40 #324

Closed ycollet closed 1 month ago

ycollet commented 3 months ago

I am trying to build vst3sdk on Fedora 40 beta and I met the following error during compilation:

In file included from /builddir/build/BUILD/vst3sdk/vstgui4/vstgui/lib/cframe.cpp:7:
/builddir/build/BUILD/vst3sdk/vstgui4/vstgui/lib/finally.h: In constructor ‘VSTGUI::FinalAction<Proc>::FinalAction(VSTGUI::FinalAction<Proc>&&)’:
/builddir/build/BUILD/vst3sdk/vstgui4/vstgui/lib/finally.h:21:30: error: expression cannot be used as a function
   21 |                 other.invoke (false);
      |                 ~~~~~~~~~~~~~^~~~~~~
ycollet commented 3 months ago

Replaced:

other.invoke (false);

By:

other.invoke = false;

And now it builds ....

ycollet commented 3 months ago

And it finally hangs with a missing symbol ....

/usr/bin/g++ -O2  -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wno-multichar -g -Wl,-z,relro -Wl,--as-needed  -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes CMakeFiles/VST3Inspector.dir/source/app.cpp.o CMakeFiles/VST3Inspector.dir/source/window.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/__/pluginterfaces/base/coreiids.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/source/vst/hosting/module.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/source/vst/utility/stringconvert.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/source/vst/moduleinfo/moduleinfoparser.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/source/vst/moduleinfo/moduleinfocreator.cpp.o CMakeFiles/VST3Inspector.dir/__/__/__/source/vst/hosting/module_linux.cpp.o -o ../../../../bin/Debug/VST3Inspector/VST3Inspector  -lstdc++fs -lpthread -ldl ../../../../lib/libvstgui.a ../../../../lib/libvstgui_uidescription.a ../../../../lib/libvstgui_standalone.a -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lgtk-3 -lgdk-3 -lz -latk-1.0 -lcairo-gobject -lgio-2.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -lcairo -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 ../../../../lib/libvstgui_uidescription.a ../../../../lib/libvstgui.a -lstdc++fs -lpthread /usr/lib64/libX11.so /usr/lib64/libXext.so /usr/lib64/libfreetype.so -lxcb -lxcb-util -lxcb-cursor -lxcb-keysyms -lxcb -lxcb-util -lxcb-cursor -lxcb-keysyms -lxcb-xkb -lxkbcommon -lxkbcommon-x11 -lxkbcommon -lxkbcommon-x11 -lpangoft2-1.0 -lfontconfig -lfreetype -lfontconfig -lfreetype -ldl -lsqlite3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -lcairo -lgobject-2.0 -lglib-2.0 
cd /builddir/build/BUILD/vst3sdk/redhat-linux-build/bin && /builddir/build/BUILD/vst3sdk/redhat-linux-build/bin/moduleinfotool -create -version 3.7.10.0 -path /builddir/build/BUILD/vst3sdk/redhat-linux-build/VST3/Debug/dataexchange.vst3 -output /builddir/build/BUILD/vst3sdk/redhat-linux-build/VST3/Debug/dataexchange.vst3/Contents/Resources/moduleinfo.json
dlopen failed.
/builddir/build/BUILD/vst3sdk/redhat-linux-build/VST3/Debug/dataexchange.vst3/Contents/x86_64-linux/dataexchange.so: undefined symbol: _ZN9Steinberg3Vst19WaveformViewManager26createNanoVGViewAndContextEvgmake[2]: *** [public.sdk/samples/vst/dataexchange/CMakeFiles/dataexchange.dir/build.make:197: VST3/Debug/dataexchange.vst3/Contents/x86_64-linux/dataexchange.so] Error 1
gmake[2]: *** Deleting file 'VST3/Debug/dataexchange.vst3/Contents/x86_64-linux/dataexchange.so'
gmake[2]: Leaving directory '/builddir/build/BUILD/vst3sdk/redhat-linux-build'
gmake[1]: *** [CMakeFiles/Makefile2:1377: public.sdk/samples/vst/dataexchange/CMakeFiles/dataexchange.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....