Forums > Dev

buffer_ref_getbuffer and buffer_ref_getexists undefined for architecture…

September 1, 2013 | 4:26 am

hello,

I get the following linker error when I try to compile my project:

Undefined symbols for architecture i386: "_buffer_ref_getbuffer"… "_buffer_ref_getexists"

Valid architectures is set to "i386 x86_64" and when I remove i386 I get the same error except it’s undefined for x86_64. Note that all my other calls in the Buffer SDK are fine, it’s only these two functions that the linker can’t find.

I saw in one other post that another use had the same problem with buffer_ref_getexists() (which incidentally is not used in the simpwave~ example project) and claims to have fixed it, but he doesn’t say how.

thanks for any help you can provide!

best,

Joe


September 1, 2013 | 4:48 am

also, I know that accessing a buffer directly is deprecated, but I need to change the contents of a buffer. can I do this by simply writing over the samples I get when when I lock the buffer? it would also be good to be able to reallocate this memory if I want to change the length of the buffer or the number of channels…

thanks a lot!

Joe


September 1, 2013 | 12:41 pm

hm, something stupid, did you try to set architectures as "i386" not "i386 x86_64" ?


September 1, 2013 | 1:01 pm

I didn’t try that because the first error was "undefined for i386", but I just tried it now, and it doesn’t fix the problem. thank you for the suggestion though.


September 9, 2013 | 8:23 am

I have just looked into this and it appears you have found a bug in the SDK. We’ll try to get that sorted out, but in the meantime…

The names of the two functions as exported by the MaxAudioAPI.framework are "buffer_ref_getobject" and "buffer_ref_exists".

Sorry for the hassle!


Viewing 5 posts - 1 through 5 (of 5 total)