Currently AIX is not one of the platforms that we develop on or support,
the lack of access for one makes it difficult to test.  The CPP client
doesn't register any atexit functions.

We welcome patches so if you find a solution we'd love to know.  If you
can capture a backtrace from the crash we can take a look and see if
there's anything that sticks out.

Regards
Tim.

On Tue, 2009-02-10 at 16:12 -0800, tmcsys wrote:
> I am getting a segfault when closing an ActiveMQ-CPP shared library on AIX.
> 
> I built ActiveMQ-cpp 2.2.3 on AIX 5.2 with gcc 3.4.
> 
> Everything works fine except that when I close the shared library the linked
> application segfaults.
> 
> This is a common problem with AIX shared libraries, and it usually has to do
> with cleanup routines installed by atexit().  In the past I've been able to
> locate these routines, unatexit() them, and call them manually before
> calling dlclose().
> 
> I've been over the ActiveMQ-cpp code several times, but I can't seem to find
> any code that installs cleanup code. 
> 
> I see calls to apr_terminate in the apr library, and the apr library is
> well-behaved at dlclose(), but I get the segfault when linking the ActiveMQ
> shared library is linked, even though it is never called.
> 
> This is a nagging problem and I would appreciate any help I can get.
> 
> The other components are apr-1.3.3, and apr-util-1.3.4, all recently
> compiled and linked by gcc 3.4.
> 
> 
> 
-- 
Tim Bish
http://fusesource.com
http://timbish.blogspot.com/



Reply via email to