Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build problem on current master #34

Closed
ycollet opened this issue Apr 12, 2019 · 9 comments
Closed

build problem on current master #34

ycollet opened this issue Apr 12, 2019 · 9 comments

Comments

@ycollet
Copy link

ycollet commented Apr 12, 2019

I build vst3sdk on Fedora 29 64 bits.
gcc version is 8.3.1.

I meet the following error during compilation:

[ 92%] Building CXX object public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o
In file included from /usr/include/c++/8/memory:80,
                 from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:40,
                 from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,
                 from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/usr/include/c++/8/bits/unique_ptr.h: Dans l'instanciation de « typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = Steinberg::Vst::AudioHost::App; _Args = {}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<Steinberg::Vst::AudioHost::App, std::default_delete<Steinberg::Vst::AudioHost::App> >] » :
/home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:63:57:   requis depuis ici
/usr/include/c++/8/bits/unique_ptr.h:831:30: error: expression « new » invalide pour le type de classe abstraite « Steinberg::Vst::AudioHost::App »
     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:52:7: note:   parce que les fonctions virtuelles suivantes sont pures dans « Steinberg::Vst::AudioHost::App »:
 class App : public EditorHost::IApplication
       ^~~
In file included from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,
                 from /home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/home/artelys/repository/github/vst3sdk/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:56:15: note:   « virtual void Steinberg::Vst::EditorHost::IApplication::terminate() »
  virtual void terminate () = 0;
               ^~~~~~~~~
make[2]: *** [public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/build.make:180: public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1532: public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
@fonkle
Copy link

fonkle commented Apr 14, 2019

Same error here building audiohost. VST3SDK 3.6.13 build 81 / Ubuntu 18.10 / Kubuntu 18.10 / GCC 8.2.0.

[ 84%] Building CXX object public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o
In file included from /usr/include/c++/8/memory:80,
                 from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:40,
                 from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,
                 from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/usr/include/c++/8/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = Steinberg::Vst::AudioHost::App; _Args = {}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<Steinberg::Vst::AudioHost::App, std::default_delete<Steinberg::Vst::AudioHost::App> >]’:
/media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:63:57:   required from here
/usr/include/c++/8/bits/unique_ptr.h:831:30: error: invalid new-expression of abstract class type ‘Steinberg::Vst::AudioHost::App’
     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:52:7: note:   because the following virtual functions are pure within ‘Steinberg::Vst::AudioHost::App’:
 class App : public EditorHost::IApplication
       ^~~
In file included from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,
                 from /media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/media/data/projecten/develop/cpp/vst3sdk-git/vst3sdk/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:56:15: note: 	‘virtual void Steinberg::Vst::EditorHost::IApplication::terminate()’
  virtual void terminate () = 0;
               ^~~~~~~~~
make[3]: *** [public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/build.make:180: public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:1532: public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1544: public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/rule] Error 2
make: *** [Makefile:391: audiohost] Error 2

Help greatly appreciated.

@rdtor
Copy link

rdtor commented Apr 27, 2019

Same problem . gcc version 8.3

92%] Building CXX object public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o
In file included from /usr/include/c++/8.3.0/memory:80,
from /home/s***/Programs/vst3sdk/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:40,
from /home/s***/Programs/vst3sdk/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,

@fonkle
Copy link

fonkle commented May 11, 2019

Seems fixed: it now builds fine on Kubuntu 19.04 / 18.10 / 18.04.

@ycollet
Copy link
Author

ycollet commented May 11, 2019

I just tried to compile vst3 and now, it compiles.
Thanks a lot

@jsochacki
Copy link

jsochacki commented May 20, 2019

I have the same error on audio host on ubuntu 18.04 with g++ 7.4.0, is there a particular version of g++ that is only supported?
If anyone wants more information to help squash this bug I'm more than happy to share whatever they like.

@rehans
Copy link
Collaborator

rehans commented May 21, 2019

I have the same error on audio host on ubuntu 18.04 with g++ 7.4.0, is there a particular version of g++ that is only supported?
If anyone wants more information to help squash this bug I'm more than happy to share whatever they like.

I just tried on Ubuntu 18.04.2 LTS and gcc (Ubuntu 7.4.0-1ubuntu1~18.04) 7.4.0 and the build succeeds.

git clone --recursive https://github.com/steinbergmedia/vst3sdk.git
mkdir vst3sdk_build
cd vst3sdk_build/
cmake ../vst3sdk
cmake --build .

@jsochacki
Copy link

jsochacki commented May 21, 2019

Well here is my build script. I realize that all the dependencies may not be in this script as I run other scripts before it that install many libraries so many of them may be in there but I wanted to paste it in here for completeness.

#!/bin/bash

sdkversion=vst3sdk

echo "Installing the Steinberg VST SDK"

echo "Getting build dependencies"

sudo apt-get -y install cmake
sudo apt-get -y install pgk-config
sudo apt-get -y install libxcb-util-dev
sudo apt-get -y install libxcb-cursor-dev
sudo apt-get -y install libxcb-keysyms1-dev
sudo apt-get -y install libxcb-xkb-dev
sudo apt-get -y install libxkbcommon-dev
sudo apt-get -y install libxkbcommon-x11-dev
sudo apt-get -y install libexpat1-dev
sudo apt-get -y install libgtkmm-3.0-dev
sudo apt-get -y install sqlite3 libsqlite3-dev
sudo apt-get -y install libjack-dev

echo "Getting the Steinberg VST SDK"

wget https://www.steinberg.net/$sdkversion
unzip -q $sdkversion
sudo rm $sdkversion
sudo mkdir /usr/local/SDKs
sudo mkdir /usr/local/SDKs/$sdkversion
sudo mv VST_SDK/ /usr/local/SDKs/$sdkversion
sudo ln -s /usr/local/SDKs/$sdkversion/VST_SDK/VST2_SDK/ /usr/local/SDKs/VST2_SDK
sudo ln -s /usr/local/SDKs/$sdkversion/VST_SDK/VST3_SDK/ /usr/local/SDKs/VST3_SDK

echo "Files downloaded and setup, moving on to making the SDK"

cd /usr/local/SDKs/VST3_SDK
sudo mkdir build
cd build

echo "Getting system configuration"
sudo cmake ../

echo "Making, this may take a while"
sudo make

echo "Install Complete"

So the difference is that I'm running make like the Readme.md says at https://github.com/steinbergmedia/vst3sdk and you are gitting from this git it while im wgetting it from their website.

I also ran with cmake as you show and it still fails.

I am also using Ubuntu 18.04.2 LTS and gcc (Ubuntu 7.4.0-1ubuntu1~18.04) 7.4.0 and the build fails at 96% with the following error

[ 96%] Building CXX object public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o
In file included from /usr/include/c++/7/memory:80:0,
                 from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:40,
                 from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40,
                 from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/usr/include/c++/7/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = Steinberg::Vst::AudioHost::App; _Args = {}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<Steinberg::Vst::AudioHost::App, std::default_delete<Steinberg::Vst::AudioHost::App> >]’:
/usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:63:57:   required from here
/usr/include/c++/7/bits/unique_ptr.h:825:30: error: invalid new-expression of abstract class type ‘Steinberg::Vst::AudioHost::App’
     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:0:
/usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:52:7: note:   because the following virtual functions are pure within ‘Steinberg::Vst::AudioHost::App’:
 class App : public EditorHost::IApplication
       ^~~
In file included from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.h:40:0,
                 from /usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/audiohost/source/audiohost.cpp:38:
/usr/local/SDKs/vst3sdk/VST_SDK/VST3_SDK/public.sdk/samples/vst-hosting/editorhost/source/platform/iapplication.h:56:15: note: 	virtual void Steinberg::Vst::EditorHost::IApplication::terminate()
  virtual void terminate () = 0;
               ^~~~~~~~~
public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/build.make:278: recipe for target 'public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o' failed
make[2]: *** [public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/source/audiohost.cpp.o] Error 1
CMakeFiles/Makefile2:1666: recipe for target 'public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/all' failed
make[1]: *** [public.sdk/samples/vst-hosting/audiohost/CMakeFiles/audiohost.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

@jsochacki
Copy link

So I can confirm that master of this git builds successfully but the Steinberg website just has an out of date image with a bug.

@scheffle
Copy link
Collaborator

This is fixed with commit 9235162

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants