<html><head></head><body><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div><div>Ouch!<br></div><div><br></div><div class="ydpcc6be3csignature">_-_-_-_-_-_-_-^-_-_-_-_-_-_-_<br><br>For <b>Lone Shark </b>releases, <b>Pure Data </b>software and published <b>Research</b>, go to <a href="http://sharktracks.co.uk" rel="nofollow" target="_blank">http://sharktracks.co.uk</a> </div></div>
            <div><br></div><div><br></div>
            
            <div id="yahoo_quoted_5332016579" class="yahoo_quoted">
                <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                    
                    <div>
                        On Friday, 20 April 2018, 22:26:46 GMT+1, IOhannes m zmölnig <zmoelnig@iem.at> wrote:
                    </div>
                    <div><br></div>
                    <div><br></div>
                    <div><div dir="ltr">On 04/20/2018 11:06 PM, Ed Kelly via Pd-list wrote:<br clear="none">> Code was shared previously on a github, but here's the offending article, and the link.<br clear="none">> <br clear="none">> The botherer is called mbc_lpc~.c<br clear="none">> <br clear="none">> edkellytista9/LPCToolkitPd<br clear="none"><br clear="none">you know, "edkellytista9/LPCToolkitPd" can be about everything; why<br clear="none">would i have thought about a github project?<br clear="none"><br clear="none">anyhow.<br clear="none"><br clear="none">compiling your file prints a huge fat warning:<br clear="none">> mbc_lpc~.c:661:1: warning: control reaches end of non-void function<br clear="none">[-Wreturn-type]<br clear="none"><br clear="none">which is indeed true, and it is telling you that your constructor<br clear="none">function lpc_new() is not returning anything (and definitely not an object).<br clear="none"><br clear="none">the externals howto [1] says:<br clear="none">> The constructor has to return a pointer to the instantiated<br clear="none">> data space.<br clear="none"><br clear="none">but even with that fixed, it doesn't load.<br clear="none">now i've asked you to:<br clear="none">- run Pd with "-verbose".<br clear="none">- check the console.<br clear="none"><br clear="none">to which you replied:<br clear="none">> tried...(all pd search paths)...and failed<br clear="none">> tried...(current directory)...and failed<br clear="none"><br clear="none">however, when i try to load your external i get:<br clear="none">> tried /tmp/zmoelnig/LPCToolkitPd/mbc_lpc~.l_ia64 and succeeded<br clear="none">> load_object: Symbol "mbc_lpc_tilde_setup" not found<br clear="none"><br clear="none">which is writing out as plain as possible that your external misses the<br clear="none">only function that it *must* have in order to be any use to Pd: the<br clear="none">callback function that allows your external to bootstrap.<br clear="none">(while blindly copying, you renamed your object but forgot to rename the<br clear="none">setup function).<br clear="none"><br clear="none"><br clear="none">apart from that:<br clear="none">- please mark all your functions as static. you will get nameclashes<br clear="none">otherwise. making your objects use totally different functions than you<br clear="none">expect (and possible making the object of other people use different<br clear="none">functions).<br clear="none">- template Makefile 1.0.14? seriously? consider switching to<br clear="none">pdlibbuilder. it's much nicer. for starters, it doesn't make bogus<br clear="none">file-extensions on linux/amd64.<br clear="none"><br clear="none"><br clear="none">gfmdsar<br clear="none">IOhannes<br clear="none"><br clear="none">[1]<br clear="none"><a shape="rect" href="https://github.com/pure-data/externals-howto#constructor-instantiation-of-an-object" target="_blank">https://github.com/pure-data/externals-howto#constructor-instantiation-of-an-object</a><div class="yqt2812768886" id="yqtfd63273"><br clear="none"><br clear="none"><br clear="none"><br clear="none"><br clear="none">> <br clear="none">> <br clear="none">> | <br clear="none">> | <br clear="none">> | <br clear="none">> |  |  |<br clear="none">> <br clear="none">>  |<br clear="none">> <br clear="none">>  |<br clear="none">> | <br clear="none">> |  | <br clear="none">> edkellytista9/LPCToolkitPd<br clear="none">> <br clear="none">> LPCToolkitPd - Mark Cartwright's LPC Toolkit for Pure Data<br clear="none">>  |<br clear="none">> <br clear="none">>  |<br clear="none">> <br clear="none">>  |<br clear="none">> <br clear="none">> <br clear="none">> <br clear="none">> <br clear="none">> <br clear="none">> _-_-_-_-_-_-_-^-_-_-_-_-_-_-_<br clear="none">> <br clear="none">> For Lone Shark releases, Pure Data software and published Research, go to <a shape="rect" href="http://sharktracks.co.uk  " target="_blank">http://sharktracks.co.uk  </a><br clear="none">> <br clear="none">>     On Friday, 20 April 2018, 22:02:16 GMT+1, IOhannes m zmölnig <<a shape="rect" ymailto="mailto:zmoelnig@iem.at" href="mailto:zmoelnig@iem.at">zmoelnig@iem.at</a>> wrote:  <br clear="none">>  <br clear="none">>  On 04/20/2018 04:38 PM, Ed Kelly via Pd-list wrote:<br clear="none">>> Apologies - I'm trying to do this while buying a house...I don't know if that is simple in Austria but it isn't here.<br clear="none">> <br clear="none">> good luck.<br clear="none">> i'm sure it is a hell of stuff to do.<br clear="none">> <br clear="none">>> After reading your email I assumed it was something new, but of course I had just copied, pasted and altered code from a previous external (and forgot> Perhaps it's to do with linking to libm, so I'll check the makefile<br clear="none">> once I'm back in a reasonably stable (time-wise) environment.<br clear="none">> <br clear="none">> in the meantime, you could also share your code with us.<br clear="none">> <br clear="none">>> BUT - I've never really understood (in ~13 years of external development) what all those args to class_new() did before, and you've forced me to look deeper into m_pd.h<br clear="none">> <br clear="none">> fwiw, each and every argument to class_new() is covered by the externals<br clear="none">> howto.<br clear="none">> <br clear="none">>> I should thank you for that - and yes, I learned how to write externals by reading your howto, in 2005 I believe.<br clear="none">> <br clear="none">> :-)<br clear="none">> <br clear="none">> <br clear="none">> gdsamr<br clear="none">> IOhannes<br clear="none">> _______________________________________________<br clear="none">> <a shape="rect" ymailto="mailto:Pd-list@lists.iem.at" href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a> mailing list<br clear="none">> UNSUBSCRIBE and account-management -> <a shape="rect" href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br clear="none">>   <br clear="none">> <br clear="none">> <br clear="none">> <br clear="none">> _______________________________________________<br clear="none">> <a shape="rect" ymailto="mailto:Pd-list@lists.iem.at" href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a> mailing list<br clear="none">> UNSUBSCRIBE and account-management -> <a shape="rect" href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br clear="none">> <br clear="none"><br clear="none"></div></div><div class="yqt2812768886" id="yqtfd58290">_______________________________________________<br clear="none"><a shape="rect" ymailto="mailto:Pd-list@lists.iem.at" href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a> mailing list<br clear="none">UNSUBSCRIBE and account-management -> <a shape="rect" href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br clear="none"></div></div>
                </div>
            </div></div></body></html>