-
Hi all ! Hi @wjakob ! I come back to you with an error that I never saw before and I cannot figure out what it means. I tried with nanobind v1.3.2, v1.4.0 & master. Here is the error I get :
which appears only when I add
to the module that is otherwise defined like so:
The class itself is defined like so:
with some other private constants (doubles and vectors). It really does not look like a complex class to me, so I am completely stumped by the error message. Can someone please advise, I need this bind fairly soon ... Thank you !! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Can you take a look at the FAQ entry related to symbol visibility and see if that helps? |
Beta Was this translation helpful? Give feedback.
__ZN7COESA76C1Ev
is the mangled form ofCOESA76::COESA76()
(you can use thec++filt
program to de-mangle symbols). So the nanobind extension can't resolve the symbol of the constructor, which is a basic C++ compilation/linking issue and not a nanobind problem.Likely, your class will need
__attribute__ ((visibility("default")))
annotations to make sure its symbols are actually exported. Or you forgot to link the nanobind extension against the other library containing this constructor.