Bug 235159

Summary: [audio/mixxx] Fails to build, Vamp SDK version mismatch
Product: Ports & Packages Reporter: Bertrand Petit <bsdpr>
Component: Individual Port(s)Assignee: Jose Alonso Cardenas Marquez <acm>
Status: Closed Not Accepted    
Severity: Affects Only Me CC: bsdpr
Priority: --- Flags: bugzilla: maintainer-feedback? (acm)
Version: Latest   
Hardware: Any   
OS: Any   

Description Bertrand Petit 2019-01-23 15:06:00 UTC
While trying to build to build Mixxx v2.2.0 (portrevision 1) an error occurs while compiling lib/vamp/src/vamp-hostsdk/PluginHostAdapter.cpp:

c++ -o lib/vamp/src/vamp-hostsdk/PluginWrapper.o -c -O2 -pipe -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing -DLIBICONV_PLUG -std=c++11 -O2 -pipe -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing -Wall -Wextra -g -pthread -fPIC -pthread -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=native -Damd64 -DMIXXX_BUILD_RELEASE -DNDEBUG -D'Q_ASSERT(x)=static_cast<void>(false&&(x))' -D__BSD__ -D__UNIX__ -DSETTINGS_PATH=\".mixxx/\" -DSETTINGS_FILE=\"mixxx.cfg\" -DUNIX_SHARE_PATH=\"/usr/local/share/mixxx\" -DUNIX_LIB_PATH=\"/usr/local/lib/mixxx\" -D__PORTAUDIO__ -DQT_TABLET_SUPPORT -DQT_SHARED -DQT_DISABLE_DEPRECATED_BEFORE -D__SNDFILE__ -DSFC_SUPPORTS_SET_COMPRESSION_LEVEL -D__MAD__ -D__HID__ -D__BULK__ -D__VINYLCONTROL__ -D__OPUS__ -D__MODPLUG__ -D__VAMP__ -Dkiss_fft_scalar=double -DHAVE_FFTW3 -D__LILV__ -I/usr/include -I/usr/local/include -I/usr/local/include/qt5 -Ibsd64_build -Isrc -Ilib/soundtouch-2.0.0 -Ilib/replaygain -I/usr/local/include/qt5/QtCore -I/usr/local/include/qt5/QtGui -I/usr/local/include/qt5/QtNetwork -I/usr/local/include/qt5/QtOpenGL -I/usr/local/include/qt5/QtScript -I/usr/local/include/qt5/QtScriptTools -I/usr/local/include/qt5/QtSql -I/usr/local/include/qt5/QtSvg -I/usr/local/include/qt5/QtTest -I/usr/local/include/qt5/QtXml -I/usr/local/include/qt5/QtConcurrent -I/usr/local/include/qt5/QtWidgets -I/usr/local/include/qt5/QtDBus -Ilib/gtest-1.7.0/include -Ilib/fidlib -I/usr/local/include/taglib -Ilib/qtscript-bytearray -Ilib/reverb -Ilib/portaudio -I/usr/local/include/hidapi -Ilib/xwax -Ilib/scratchlib -I/usr/local/include/opus -Ilib/vamp lib/vamp/src/vamp-hostsdk/PluginWrapper.cpp
lib/vamp/src/vamp-hostsdk/PluginHostAdapter.cpp:41:2: error: Unexpected version
      of Vamp SDK header included
#error Unexpected version of Vamp SDK header included
 ^
lib/vamp/src/vamp-hostsdk/PluginLoader.cpp:161:15: error: out-of-line definition
      of 'listPluginsIn' does not match any declaration in
      '_VampHost::Vamp::HostExt::PluginLoader'
PluginLoader::listPluginsIn(vector<string> libs) 
              ^~~~~~~~~~~~~
lib/vamp/src/vamp-hostsdk/PluginLoader.cpp:167:15: error: out-of-line definition
      of 'listPluginsNotIn' does not match any declaration in
      '_VampHost::Vamp::HostExt::PluginLoader'
PluginLoader::listPluginsNotIn(vector<string> libs) 
              ^~~~~~~~~~~~~~~~
1 error generated.

I suppose there is a mismatch between the included vamp library and the version installed from the ports: vamp-plugin-sdk-2.6

For a quick and dirty port I did on 2.1.4 I made the following change in features.py:

-            build.env.Append(CPPPATH=[self.INTERNAL_VAMP_PATH])
+            build.env.Prepend(CPPPATH=[self.INTERNAL_VAMP_PATH])

This will probably resolve the present issue.
Comment 1 Jose Alonso Cardenas Marquez freebsd_committer freebsd_triage 2019-03-07 18:59:14 UTC
The best is update your vamp-sdk to 2.7 and try again. Ports are tested with latest libraries version not with old one. Maybe I would had add a message about vamp-sdk at ports/UPDATING file. I close this PR. Please use latest version of vamp-sdk