UIMA-C++ uses several libraries including APR, ICU and xercesc. Does OpenCV drag in any of these at different version levels?
Eddie On Tue, Feb 18, 2014 at 6:34 AM, Peter Retzlaff <pe.retzl...@gmail.com>wrote: > Hello, > > we are working on a UIMA project with several C++-Analysis Engines > (UIMA-AS 2.4 + UIMACPP 2.4). For a while now, we've been getting this > error message, when one of these AEs exits: > > Inconsistency detected by ld.so: dl-close.c: 759: _dl_close: Assertion > `map->l_init_called' > > In particular, this happens with AEs that use OpenCV. I have constructed > a toy example that does nothing, except defining an Annotator, linking > it against OpenCV and UIMA and executing it with runAECpp. > > The error message seems to be related to the fact, that some calls to > dlclose happen in library destructors which are called _after_ all > dynamically loaded libraries have been unloaded. (see > https://bugzilla.novell.com/show_bug.cgi?id=622977, for example) > > So this error might not be specific to UIMA, but what's baffling me is > that it only occurs, when UIMA and OpenCV are both linked into the lib. > Linking either one of them on it's own doesn't produce the error message. > > Has anyone ever seen this problem with C++-AEs before? I'm desperately > looking for any pointers or hints, how this problem could be resolved. > > Thanks and best regards > Peter > > > P.S.: This is the test code I use: > TestAnnotator.cpp: > "#include "uima/api.hpp" > using namespace uima; > > class TestAnnotator: public Annotator { > }; > // This macro exports an entry point that is used to create the annotator. > > MAKE_AE( TestAnnotator); > " > > Makefile: > " > UIMACPP_HOME=/opt/apache-uima-as/uimacpp > UIMA_HOME=/opt/apache-uima-as > TARGET_FILE=TestAnnotator > OBJS=TestAnnotator.o > USER_LINKFLAGS=/usr/local/lib/libopencv_core.so.2.4.3-1 > DEBUG=1 > DLL_BUILD=1 > > all: > # include file with generic compiler instructions > include $(UIMACPP_HOME)/lib/base.mak > > Executing it with: > /opt/apache-uima-as/uimacpp/bin/runAECpp ./TestAnnotatorAE.xml -x > testdata/cas.xml . > >