Building AU Plugin

SDK for VST 3 audio plug-in and host development.
Post Reply
George99
Posts: 4
Joined: Thu Jul 30, 2020 10:06 am

Building AU Plugin

Post by George99 »

Hallo,
I need a hint to solve a problem while building a AU-Plugin with auwrapper.

Building with Xcode version: 9.0
macOS Deployment Target: 10.10

I suppose a special header or source file is missed or a special preprocessor definition...

When I try to buil the again_au example the folowing linker errors appear:

Undefined symbols for architecture x86_64:
"Steinberg::IPluginBase::iid", referenced from:
Steinberg::FUnknownPtr<Steinberg::IPluginBase>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)
"Steinberg::IPluginFactory2::iid", referenced from:
Steinberg::FUnknownPtr<Steinberg::IPluginFactory2>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IComponent::iid", referenced from:
Steinberg::FUnknownPtr<Steinberg::Vst::IComponent>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IEventList::iid", referenced from:
Steinberg::Vst::EventList::queryInterface(char const*, void**) in libauwrapper.a(eventlist.o)
"Steinberg::Vst::IMidiMapping::iid", referenced from:
Steinberg::Vst::AUWrapper::AUWrapper(ComponentInstanceRecord*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IAttributeList::iid", referenced from:
Steinberg::Vst::HostApplication::createInstance(char*, char*, void**) in libauwrapper.a(hostclasses.o)
Steinberg::Vst::HostAttributeList::queryInterface(char const*, void**) in libauwrapper.a(hostclasses.o)
"Steinberg::Vst::IAudioProcessor::iid", referenced from:
Steinberg::Vst::AUWrapper::AUWrapper(ComponentInstanceRecord*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IEditController::iid", referenced from:
Steinberg::Vst::AUWrapper::AUWrapper(ComponentInstanceRecord*) in libauwrapper.a(auwrapper.o)
Steinberg::FUnknownPtr<Steinberg::Vst::IEditController>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IConnectionPoint::iid", referenced from:
Steinberg::FUnknownPtr<Steinberg::Vst::IConnectionPoint>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IHostApplication::iid", referenced from:
Steinberg::Vst::HostApplication::queryInterface(char const*, void**) in libauwrapper.a(hostclasses.o)
"Steinberg::Vst::IParamValueQueue::iid", referenced from:
Steinberg::Vst::ParameterValueQueue::queryInterface(char const*, void**) in libauwrapper.a(parameterchanges.o)
"Steinberg::Vst::IVst3ToAUWrapper::iid", referenced from:
Steinberg::Vst::AUHostApplication::queryInterface(char const*, void**) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IComponentHandler::iid", referenced from:
Steinberg::Vst::AUWrapper::queryInterface(char const*, void**) in libauwrapper.a(auwrapper.o)
"Steinberg::Vst::IParameterChanges::iid", referenced from:
Steinberg::Vst::ParameterChanges::queryInterface(char const*, void**) in libauwrapper.a(parameterchanges.o)
"Steinberg::Vst::IStreamAttributes::iid", referenced from:
Steinberg::Vst::NSDataIBStream::queryInterface(char const*, void**) in libauwrapper.a(NSDataIBStream.o)
"Steinberg::Vst::IMessage::iid", referenced from:
Steinberg::Vst::HostApplication::createInstance(char*, char*, void**) in libauwrapper.a(hostclasses.o)
Steinberg::Vst::HostMessage::queryInterface(char const*, void**) in libauwrapper.a(hostclasses.o)
"Steinberg::Vst::IUnitInfo::iid", referenced from:
Steinberg::Vst::AUWrapper::Initialize() in libauwrapper.a(auwrapper.o)
Steinberg::Vst::AUWrapper::getProgramListAndUnit(int, int&, int&) in libauwrapper.a(auwrapper.o)
Steinberg::FUnknownPtr<Steinberg::Vst::IUnitInfo>::FUnknownPtr(Steinberg::FUnknown*) in libauwrapper.a(auwrapper.o)

Thanks, Joerg

Arne Scheffler
Posts: 383
Joined: Mon Jun 20, 2016 7:53 am

Re: Building AU Plugin

Post by Arne Scheffler »

Can you post your complete build log? Thanks you.

George99
Posts: 4
Joined: Thu Jul 30, 2020 10:06 am

Re: Building AU Plugin

Post by George99 »

I'm sorry for the basic question: where can I find the complete build log?
I'm not familiar with Xcode, normaly I work on windows.

By the way, what I find is, that the missed symbols are defined in:

"pluginfactoryvst3.cpp"
"vstinitiids.cpp"

from the "VST3_SDK\public.sdk\source\vst" directory

both files are used in the sdk / public.sdk target of the Xcode project created by cmake. But obviously the auwrapper (libauwrapper)
does not see them...
Thank You

Post Reply