[Ardour-Users] Compiling Various LADSPA Plugins on OS X

Jesse Chappell jesse at essej.net
Tue Dec 2 06:14:48 PST 2008


On Tue, Dec 2, 2008 at 7:21 AM, Ben Powers <bennyp at out-of-order.ca> wrote:
> Hello, I'm trying to compile calf on OS X but experiencing some
> difficulties.
>
>> ./calf/osc.h: In member function 'void
>> dsp::bandlimiter<SIZE_BITS>::make_waveform(float*, int, bool)':
>> ./calf/osc.h:149: error: 'class std::vector<std::complex<float>,
>> std::allocator<std::complex<float> > >' has no member named 'data'
>> ./calf/osc.h:149: error: 'class std::vector<std::complex<float>,
>> std::allocator<std::complex<float> > >' has no member named 'data'
>> make[3]: *** [modules_dsp.lo] Error 1
>> make[2]: *** [all-recursive] Error 1
>> make[1]: *** [all-recursive] Error 1
>> make: *** [all] Error 2
>>
> at which point my understanding breaks down.

It looks like the plugin is using a possibly non-standard method
std::vector<> 's data() which apparently is not available on OS X?
I will try this out later.

> Next I tried REV and MCP plugins:
>
>> bennyp at Macintosh-6 REV-plugins-0.3.1 $ make
>> g++  -I. -fPIC -D_REENTRANT -Wall -O2  -c -o greverb.o greverb.cc
>> g++  -I. -fPIC -D_REENTRANT -Wall -O2  -c -o g2reverb.o g2reverb.cc
>> g++  -I. -fPIC -D_REENTRANT -Wall -O2  -c -o g2reverb_if.o g2reverb_if.cc
>> g++  -I. -fPIC -D_REENTRANT -Wall -O2  -c -o exp2ap.o exp2ap.cc
>> g++ -shared greverb.o g2reverb.o g2reverb_if.o exp2ap.o -o g2reverb.so
>> Undefined symbols:
>> "_main", referenced from:
>>   start in crt1.10.5.o
>> ld: symbol(s) not found
>> collect2: ld returned 1 exit status
>> make: *** [g2reverb.so] Error 1

You will need to modify the LDFLAGS to get rid of the '-shared' and
replace it with:
  -fno-common -flat_namespace -bundle -undefined suppress -lbundle1.o

Maybe I should go ahead and package all these plugins too, to save
folks like you the trouble.....

jlc



More information about the Ardour-Users mailing list