Using the JUCER with MinGW/MSYS?


#1

Ive been compiling VST’s with MSYS/make and i was wondering if anyone could give instructions on compiling with this using a gui from jucer? i get alot of errors when i try to compile it.


#2

ok ill be more specific…

OneEight.o:OneEight.cpp:(.text+0x5d): undefined reference to `juce::Component::Component()'
OneEight.o:OneEight.cpp:(.text+0x99): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0xd0): undefined reference to `juce::Slider::Slider(juce::String const&)'
OneEight.o:OneEight.cpp:(.text+0xff): undefined reference to `juce::Component::addAndMakeVisible(juce::Component*, int)'
OneEight.o:OneEight.cpp:(.text+0x111): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x13f): undefined reference to `juce::Slider::setRange(double, double, double)'
OneEight.o:OneEight.cpp:(.text+0x156): undefined reference to `juce::Slider::setSliderStyle(juce::Slider::SliderStyle)'
OneEight.o:OneEight.cpp:(.text+0x188): undefined reference to `juce::Slider::setTextBoxStyle(juce::Slider::TextEntryBoxPosition, bool, int, int)'
OneEight.o:OneEight.cpp:(.text+0x1b3): undefined reference to `juce::Slider::addListener(juce::SliderListener*)'
OneEight.o:OneEight.cpp:(.text+0x1c7): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0x1d3): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0x212): undefined reference to `juce::Label::Label(juce::String const&, juce::String const&)'
OneEight.o:OneEight.cpp:(.text+0x241): undefined reference to `juce::Component::addAndMakeVisible(juce::Component*, int)'
OneEight.o:OneEight.cpp:(.text+0x256): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x261): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x277): undefined reference to `juce::Font::Font(float, int)'
OneEight.o:OneEight.cpp:(.text+0x28f): undefined reference to `juce::Label::setFont(juce::Font const&)'
OneEight.o:OneEight.cpp:(.text+0x299): undefined reference to `juce::Font::~Font()'
OneEight.o:OneEight.cpp:(.text+0x2b5): undefined reference to `juce::Label::setJustificationType(juce::Justification const&)'
OneEight.o:OneEight.cpp:(.text+0x2db): undefined reference to `juce::Label::setEditable(bool, bool, bool)'
OneEight.o:OneEight.cpp:(.text+0x2e6): undefined reference to `juce::Colours::white'
OneEight.o:OneEight.cpp:(.text+0x304): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x30f): undefined reference to `juce::Colours::black'
OneEight.o:OneEight.cpp:(.text+0x327): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x340): undefined reference to `juce::Colour::Colour(unsigned int)'
OneEight.o:OneEight.cpp:(.text+0x364): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x379): undefined reference to `juce::Colour::~Colour()'
OneEight.o:OneEight.cpp:(.text+0x39a): undefined reference to `juce::Component::setSize(int, int)'
OneEight.o:OneEight.cpp:(.text+0x3ec): undefined reference to `juce::Colour::~Colour()'
OneEight.o:OneEight.cpp:(.text+0x407): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x412): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x421): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0x42f): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0x4bd): undefined reference to `juce::Component::Component()'
OneEight.o:OneEight.cpp:(.text+0x4f9): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0x530): undefined reference to `juce::Slider::Slider(juce::String const&)'
OneEight.o:OneEight.cpp:(.text+0x55f): undefined reference to `juce::Component::addAndMakeVisible(juce::Component*, int)'
OneEight.o:OneEight.cpp:(.text+0x571): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x59f): undefined reference to `juce::Slider::setRange(double, double, double)'
OneEight.o:OneEight.cpp:(.text+0x5b6): undefined reference to `juce::Slider::setSliderStyle(juce::Slider::SliderStyle)'
OneEight.o:OneEight.cpp:(.text+0x5e8): undefined reference to `juce::Slider::setTextBoxStyle(juce::Slider::TextEntryBoxPosition, bool, int, int)'
OneEight.o:OneEight.cpp:(.text+0x613): undefined reference to `juce::Slider::addListener(juce::SliderListener*)'
OneEight.o:OneEight.cpp:(.text+0x627): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0x633): undefined reference to `juce::String::String(wchar_t const*)'
OneEight.o:OneEight.cpp:(.text+0x672): undefined reference to `juce::Label::Label(juce::String const&, juce::String const&)'
OneEight.o:OneEight.cpp:(.text+0x6a1): undefined reference to `juce::Component::addAndMakeVisible(juce::Component*, int)'
OneEight.o:OneEight.cpp:(.text+0x6b6): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x6c1): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x6d7): undefined reference to `juce::Font::Font(float, int)'
OneEight.o:OneEight.cpp:(.text+0x6ef): undefined reference to `juce::Label::setFont(juce::Font const&)'
OneEight.o:OneEight.cpp:(.text+0x6f9): undefined reference to `juce::Font::~Font()'
OneEight.o:OneEight.cpp:(.text+0x715): undefined reference to `juce::Label::setJustificationType(juce::Justification const&)'
OneEight.o:OneEight.cpp:(.text+0x73b): undefined reference to `juce::Label::setEditable(bool, bool, bool)'
OneEight.o:OneEight.cpp:(.text+0x746): undefined reference to `juce::Colours::white'
OneEight.o:OneEight.cpp:(.text+0x764): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x76f): undefined reference to `juce::Colours::black'
OneEight.o:OneEight.cpp:(.text+0x787): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x7a0): undefined reference to `juce::Colour::Colour(unsigned int)'
OneEight.o:OneEight.cpp:(.text+0x7c4): undefined reference to `juce::Component::setColour(int, juce::Colour const&)'
OneEight.o:OneEight.cpp:(.text+0x7d9): undefined reference to `juce::Colour::~Colour()'
OneEight.o:OneEight.cpp:(.text+0x7fa): undefined reference to `juce::Component::setSize(int, int)'
OneEight.o:OneEight.cpp:(.text+0x84c): undefined reference to `juce::Colour::~Colour()'
OneEight.o:OneEight.cpp:(.text+0x867): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x872): undefined reference to `juce::String::~String()'
OneEight.o:OneEight.cpp:(.text+0x881): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0x88f): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0x94b): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0x95a): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0x99c): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0x9ae): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0xa5b): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0xa6a): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0xaac): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0xabe): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0xb6b): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0xb7a): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0xbc0): undefined reference to `vtable for juce::SliderListener'
OneEight.o:OneEight.cpp:(.text+0xbd2): undefined reference to `juce::Component::~Component()'
OneEight.o:OneEight.cpp:(.text+0xbf9): undefined reference to `juce::Colours::black'
OneEight.o:OneEight.cpp:(.text+0xc45): undefined reference to `juce::Component::setBounds(int, int, int, int)'
OneEight.o:OneEight.cpp:(.text+0xc74): undefined reference to `juce::Component::setBounds(int, int, int, int)'
OneEight.o:OneEight.cpp:(.text+0xc02): undefined reference to `juce::Graphics::fillAll(juce::Colour const&) const'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x10): undefined reference to `juce::Component::mouseMove(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x14): undefined reference to `juce::Component::mouseEnter(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x18): undefined reference to `juce::Component::mouseExit(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x1c): undefined reference to `juce::Component::mouseDown(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x20): undefined reference to `juce::Component::mouseDrag(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x24): undefined reference to `juce::Component::mouseUp(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x28): undefined reference to `juce::Component::mouseDoubleClick(juce::MouseEvent const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x2c): undefined reference to `juce::Component::mouseWheelMove(juce::MouseEvent const&, float, float)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x34): undefined reference to `juce::Component::setName(juce::String const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x38): undefined reference to `juce::Component::setVisible(bool)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x3c): undefined reference to `juce::Component::visibilityChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x40): undefined reference to `juce::Component::addToDesktop(int, void*)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x44): undefined reference to `juce::Component::userTriedToCloseWindow()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x48): undefined reference to `juce::Component::minimisationStateChanged(bool)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x4c): undefined reference to `juce::Component::parentHierarchyChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x50): undefined reference to `juce::Component::childrenChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x54): undefined reference to `juce::Component::hitTest(int, int)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x58): undefined reference to `juce::Component::contains(int, int)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x5c): undefined reference to `juce::Component::lookAndFeelChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x60): undefined reference to `juce::Component::createFocusTraverser()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x64): undefined reference to `juce::Component::enablementChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x68): undefined reference to `juce::Component::getMouseCursor()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x70): undefined reference to `juce::Component::paintOverChildren(juce::Graphics&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x74): undefined reference to `juce::Component::keyPressed(juce::KeyPress const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x78): undefined reference to `juce::Component::keyStateChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x7c): undefined reference to `juce::Component::modifierKeysChanged(juce::ModifierKeys const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x80): undefined reference to `juce::Component::focusGained(juce::Component::FocusChangeType)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x84): undefined reference to `juce::Component::focusLost(juce::Component::FocusChangeType)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x88): undefined reference to `juce::Component::focusOfChildComponentChanged(juce::Component::FocusChangeType)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x90): undefined reference to `juce::Component::moved()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x94): undefined reference to `juce::Component::childBoundsChanged(juce::Component*)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x98): undefined reference to `juce::Component::parentSizeChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0x9c): undefined reference to `juce::Component::broughtToFront()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xa0): undefined reference to `juce::Component::handleCommandMessage(int)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xa4): undefined reference to `juce::Component::canModalEventBeSentToComponent(juce::Component const*)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xa8): undefined reference to `juce::Component::inputAttemptWhenModal()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xac): undefined reference to `juce::Component::colourChanged()'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xb4): undefined reference to `juce::Component::internalRepaint(int, int, int, int)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xb8): undefined reference to `juce::Component::createNewPeer(int, void*)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xbc): undefined reference to `juce::Component::handleMessage(juce::Message const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xd4): undefined reference to `non-virtual thunk to juce::Component::handleMessage(juce::Message const&)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xec): undefined reference to `juce::SliderListener::sliderDragStarted(juce::Slider*)'
OneEight.o:OneEight.cpp:(.rdata$_ZTV8OneEight[vtable for OneEight]+0xf0): undefined reference to `juce::SliderListener::sliderDragEnded(juce::Slider*)'
C:/VSTPLUGINS/vstsdk2.4/public.sdk/source/vst2.x/vstplugmain.o:vstplugmain.cpp:(.text+0x3f): undefined reference to `createEffectInstance(int (*)(AEffect*, int, int, int, void*, float))'
C:/VSTPLUGINS/vstsdk2.4/public.sdk/source/vst2.x/vstplugmain.o:vstplugmain.cpp:(.text+0xa9): undefined reference to `createEffectInstance(int (*)(AEffect*, int, int, int, void*, float))'
collect2: ld returned 1 exit status
c:\mingw\bin\dllwrap.exe: c++ exited with status 1
make: *** [OneEight.dll] Error 1

and yes juice.h is included. any ideas?


#3

erm, are you actually linking your app to the juce lib?..


#4

with an include?


#5

…no - by linking it to the juce library. If you don’t even understand c++ linking yet, you’d be a lot better off using MSVC rather than trying to do things the hard way with gcc tools


#6