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

undefined references building plugin (fresh clone, Windows, updated MINGW64) #226

Open
Paul-Dempsey opened this issue May 24, 2023 · 2 comments

Comments

@Paul-Dempsey
Copy link

Paul-Dempsey commented May 24, 2023

Just cloned this repo, building in full Rack environment (not SDK) on Windows with a freshly updated MINGW64, and I'm getting these two unresolved externals when building this plugin for bogaudio::VCF::minFrequency and bogaudio::FollowerBase::efGainMaxDecibels.

make[1]: Entering directory '/g/repos/rack/plugins/BogaudioModules'
g++ -o plugin.dll build/src/AD.cpp.o build/src/ADSR.cpp.o build/src/AMRM.cpp.o build/src/ASR.cpp.o build/src/Additator.cpp.o build/src/AddrSeq.cpp.o build/src/AddrSeqX.cpp.o build/src/Analyzer.cpp.o build/src/AnalyzerXL.cpp.o build/src/Arp.cpp.o build/src/Assign.cpp.o build/src/Blank3.cpp.o build/src/Blank6.cpp.o build/src/Bool.cpp.o build/src/CVD.cpp.o build/src/Chirp.cpp.o build/src/Clpr.cpp.o build/src/Cmp.cpp.o build/src/CmpDist.cpp.o build/src/DADSRH.cpp.o build/src/DADSRHPlus.cpp.o build/src/DGate.cpp.o build/src/Detune.cpp.o build/src/EQ.cpp.o build/src/EQS.cpp.o build/src/Edge.cpp.o build/src/EightFO.cpp.o build/src/EightOne.cpp.o build/src/FFB.cpp.o build/src/FMOp.cpp.o build/src/FlipFlop.cpp.o build/src/Follow.cpp.o build/src/FourFO.cpp.o build/src/FourMan.cpp.o build/src/Inv.cpp.o build/src/LFO.cpp.o build/src/LLFO.cpp.o build/src/LLPG.cpp.o build/src/LPG.cpp.o build/src/LVCF.cpp.o build/src/LVCO.cpp.o build/src/Lag.cpp.o build/src/Lgsw.cpp.o build/src/Lmtr.cpp.o build/src/Manual.cpp.o build/src/Matrix18.cpp.o build/src/Matrix44.cpp.o build/src/Matrix44Cvm.cpp.o build/src/Matrix81.cpp.o build/src/Matrix88.cpp.o build/src/Matrix88Cv.cpp.o build/src/Matrix88M.cpp.o build/src/MegaGate.cpp.o build/src/Mix1.cpp.o build/src/Mix2.cpp.o build/src/Mix4.cpp.o build/src/Mix4x.cpp.o build/src/Mix8.cpp.o build/src/Mix8x.cpp.o build/src/Mono.cpp.o build/src/Mult.cpp.o build/src/Mumix.cpp.o build/src/Mute8.cpp.o build/src/Noise.cpp.o build/src/Nsgt.cpp.o build/src/Offset.cpp.o build/src/OneEight.cpp.o build/src/PEQ.cpp.o build/src/PEQ14.cpp.o build/src/PEQ14XF.cpp.o build/src/PEQ14XR.cpp.o build/src/PEQ14XV.cpp.o build/src/PEQ6.cpp.o build/src/PEQ6XF.cpp.o build/src/Pan.cpp.o build/src/Pgmr.cpp.o build/src/PgmrX.cpp.o build/src/Pgmr_shared.cpp.o build/src/PolyCon16.cpp.o build/src/PolyCon8.cpp.o build/src/PolyMult.cpp.o build/src/PolyOff16.cpp.o build/src/PolyOff8.cpp.o build/src/Pressor.cpp.o build/src/Pulse.cpp.o build/src/RGate.cpp.o build/src/Ranalyzer.cpp.o build/src/Reftone.cpp.o build/src/SampleHold.cpp.o build/src/Shaper.cpp.o build/src/ShaperPlus.cpp.o build/src/Sine.cpp.o build/src/Slew.cpp.o build/src/Stack.cpp.o build/src/Sums.cpp.o build/src/Switch.cpp.o build/src/Switch1616.cpp.o build/src/Switch18.cpp.o build/src/Switch44.cpp.o build/src/Switch81.cpp.o build/src/Switch88.cpp.o build/src/Test.cpp.o build/src/Test2.cpp.o build/src/TestExpander.cpp.o build/src/TestGl.cpp.o build/src/TestVCF.cpp.o build/src/UMix.cpp.o build/src/Unison.cpp.o build/src/VCA.cpp.o build/src/VCAmp.cpp.o build/src/VCF.cpp.o build/src/VCM.cpp.o build/src/VCO.cpp.o build/src/VU.cpp.o build/src/Velo.cpp.o build/src/Vish.cpp.o build/src/Walk.cpp.o build/src/Walk2.cpp.o build/src/XCO.cpp.o build/src/XFade.cpp.o build/src/addressable_sequence.cpp.o build/src/analyzer_base.cpp.o build/src/bogaudio.cpp.o build/src/dadsrh_core.cpp.o build/src/disable_output_limit.cpp.o build/src/follower_base.cpp.o build/src/lfo_base.cpp.o build/src/lpg_common.cpp.o build/src/matrix_base.cpp.o build/src/menu.cpp.o build/src/mixer.cpp.o build/src/mixer_expander.cpp.o build/src/module.cpp.o build/src/output_range.cpp.o build/src/param_quantities.cpp.o build/src/parametric_eq.cpp.o build/src/poly_channels.cpp.o build/src/rack_overrides.cpp.o build/src/save_latch_to_patch.cpp.o build/src/shaper_core.cpp.o build/src/skins.cpp.o build/src/slew_common.cpp.o build/src/trigger_on_load.cpp.o build/src/utils.cpp.o build/src/vco_base.cpp.o build/src/widgets.cpp.o build/src/dsp/analyzer.cpp.o build/src/dsp/envelope.cpp.o build/src/dsp/math.cpp.o build/src/dsp/noise.cpp.o build/src/dsp/oscillator.cpp.o build/src/dsp/signal.cpp.o build/src/dsp/table.cpp.o build/src/dsp/filters/equalizer.cpp.o build/src/dsp/filters/experiments.cpp.o build/src/dsp/filters/filter.cpp.o build/src/dsp/filters/multimode.cpp.o build/src/dsp/filters/resample.cpp.o build/src/dsp/filters/utility.cpp.o -shared -L../.. -lRack -static-libstdc++
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: build/src/VCF.cpp.o:VCF.cpp:(.rdata$.refptr._ZN8bogaudio3VCF12minFrequencyE[.refptr._ZN8bogaudio3VCF12minFrequencyE]+0x0): undefined reference to `bogaudio::VCF::minFrequency'
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: build/src/follower_base.cpp.o:follower_base.:(.rdata$.refptr._ZN8bogaudio12FollowerBase17efGainMaxDecibelsE[.refptr._ZN8bogaudio12FollowerBase17efGainMaxDecibelsE]+0x0): undefined reference to `bogaudio::FollowerBase::efGainMaxDecibels'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [../../compile.mk:78: plugin.dll] Error 1
make[1]: Leaving directory '/g/repos/rack/plugins/BogaudioModules'

I do see both definitions of them. Is this related to them being static constexpr? This is new to me, since I'm just getting back to C++ for the first time since ~2006, and not used gcc before. I didn't see any special instructions in the README for building.

Any idea what's wrong, or clues to where to look?

@mdemanett
Copy link
Contributor

What's the compiler version? 'gcc --version'?

@Paul-Dempsey
Copy link
Author

Paul-Dempsey commented Jun 7, 2023 via email

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

2 participants