Hi Pepijn,

I suspect your problem is because somehow the Python module was built
against headers from a different version of Cap'n Proto compared to the .so
file that it's being linked against. I seem to recall there being some
hackery in the Python implementation where it might try to use a bundled
version of Cap'n Proto rather than the system-installed version, but I
don't remember the details. Maybe this led to a mismatch.

-Kenton

On Thu, Nov 28, 2019 at 6:17 AM Pepijn de Vos <[email protected]> wrote:

> Hey all,
>
> I'm exploring serialization libraries, so I installed the Python lib and
> got the following error
>
> ImportError: [...]capnp.cpython-38-x86_64-linux-gnu.so: undefined symbol:
> _ZN2kj1_24TransformPromiseNodeBase7onReadyERNS0_5EventE
>
> Which is definitely a thing, and has been for two years:
> https://github.com/capnproto/capnproto/blame/master/c%2B%2B/src/kj/async-inl.h#L392
>
> It also seems to be linked correctly
>
> $ ldd [...]capnp.cpython-38-x86_64-linux-gnu.so
>     linux-vdso.so.1 (0x00007ffe675cf000)
>     libcapnpc-0.7.0.so => /usr/lib/libcapnpc-0.7.0.so (0x00007f7dc5173000)
>     libcapnp-rpc-0.7.0.so => /usr/lib/libcapnp-rpc-0.7.0.so (
> 0x00007f7dc5090000)
>     libcapnp-0.7.0.so => /usr/lib/libcapnp-0.7.0.so (0x00007f7dc4ff4000)
>     libkj-async-0.7.0.so => /usr/lib/libkj-async-0.7.0.so (
> 0x00007f7dc4f60000)
>     libkj-0.7.0.so => /usr/lib/libkj-0.7.0.so (0x00007f7dc4eda000)
>     libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7dc4cf0000)
>     libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f7dc4cd4000)
>     libc.so.6 => /usr/lib/libc.so.6 (0x00007f7dc4b0d000)
>     libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f7dc4aeb000)
>     libm.so.6 => /usr/lib/libm.so.6 (0x00007f7dc49a5000)
>     /usr/lib64/ld-linux-x86-64.so.2 (0x00007f7dc540e000)
>
>
> So the system library version is 0.7, and the latest Python library is
> 0.6.4, not sure if the versions are just mismatched somehow.
> I tried installing from git with the same result, is the Python library
> just outdated?
> Or maybe the Arch package is just broken, because it doesn't contain the
> required symbol?
>
> Cheers,
> Pepijn
>
> --
> You received this message because you are subscribed to the Google Groups
> "Cap'n Proto" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/capnproto/304b0818-aeef-48b7-87d8-ab028fd76bdb%40googlegroups.com
> <https://groups.google.com/d/msgid/capnproto/304b0818-aeef-48b7-87d8-ab028fd76bdb%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Cap'n Proto" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/capnproto/CAJouXQk26EP1S5jT3YW8arCeYmw7yN9ZYXTqD2KCpHQUmKhAXg%40mail.gmail.com.

Reply via email to