[PD-dev] Compiling an external with stdc++ on Linux

Pierre Guillot guillotpierre6 at gmail.com
Tue Jun 19 16:39:48 CEST 2018


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20180619/b8fdeb62/attachment.html>


More information about the Pd-dev mailing list