I found the solution! I was linking the external with stdc++ but in fact I must link the FAUST library with stdc++. Now, there are 2 more "implicit" dependencies libz.so and libtinfo.so (and libstdc++.so) that seem to fix the problem and it works! I will publish the new version v0.0.2 (with the Linux fix) on Deken today (there is already the version 0.0.1 that works on Mac & Windows 64bits on Deken). I'll keep you informed when the version will be available on the pd-announce list . Cheers,
Pierre Le mar. 19 juin 2018 à 16:39, Pierre Guillot <[email protected]> a écrit : > Hi, > > I'm currently working on an external with the *FAUST* just-in-time (JIT) > compiler embedded that allows to load, compile and play FAUST. I managed to > compile a 64 bits version for Mac, Windows (yeah!) and Linux but on Linux I > got a problem: > > The external has unresolved symbols: *__cxa_pure_virtual*. > Here is the result of ldd: > > ldd ../external/faust~.pd_linux > linux-vdso.so.1 => (0x00007ffcbf6d9000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fdeb864a000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fdeb8341000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x00007fdeb8124000) > libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 > (0x00007fdeb7f0e000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fdeb7b44000) > /lib64/ld-linux-x86-64.so.2 (0x00007fdebae31000) > > > And when I link the external with *stdc++* to solve this problem, Pd > crashes directly when I call *class_new()* - it's my 1st attempt with gdb > so I didn't go very far. I only found that Pd crashes when the "setup" > function is called. If I only use a "dummy" class_new() method - > *t_class* c = class_new(gensym("faust~"), (t_newmethod)NULL, > (t_method)NULL, s**izeof(t_faust_tilde), CLASS_DEFAULT, A_GIMME, 0);* > - it also crashes. > > Here is the result of ldd: > > ldd ../external/faust~.pd_linux > linux-vdso.so.1 => (0x00007ffe5d9e1000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f50e5c5f000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x00007f50e5a42000) > *libstdc++.so.6* => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 > (0x00007f50e56c0000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f50e53b7000) > libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 > (0x00007f50e51a1000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f50e4dd7000) > /lib64/ld-linux-x86-64.so.2 (0x00007f50e8446000) > > > Here is the Github repository: https://github.com/pierreguillot/faust-pd > > Any help would be greatly appreciated! > Thanks, > > Pierre > >
_______________________________________________ Pd-dev mailing list [email protected] https://lists.puredata.info/listinfo/pd-dev
