[cffi-devel] close-foreign-library assert

Luís Oliveira luismbo at gmail.com
Thu Mar 21 09:50:42 UTC 2013


On Thu, Mar 21, 2013 at 4:53 AM, nan <noncopyable at gmail.com> wrote:
> I am working on a project which used to be completely in C++, now i am
> gradually moving some of it to CL. For this reason i need to work on both
> sides, which requires me to reload cffi bindings too often. I couldn't find
> anything related to this in documentation. Probably this is not an intended
> use case so there is no support. Which means i need to use my hammer again,
> restart image :)

FWIW, it's a use case that should work.


> Inconsistency detected by ld.so: dl-close.c: 765: _dl_close: Assertion
> `map->l_init_called' failed!
>
> Tracing this assert shows it was triggered from dlclose system call in sbcl
> source, and i am not entirely sure where i should report this bug.

A Google search for that error string turns up this:
<https://savannah.gnu.org/bugs/index.php?34195#comment0>. Perhaps your
library is being marked as RTLD_NODELETE by glibc as described in that
bug report. I suppose a good way to check that this is something
glibc-related would be to write a small C program that opens and
reloads your library. Can you try that?

Cheers,

-- 
Luís Oliveira
http://r42.eu/~luis/




More information about the cffi-devel mailing list