activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Timothy Bish <tabish...@gmail.com>
Subject Re: Need help tracking down activemq-cpp core dump on Centos
Date Tue, 20 Jul 2010 19:35:24 GMT
On Tue, 2010-07-20 at 14:27 -0500, Devin Venable wrote:
> I've built apr and activemq-cpp on Centos (notes here:
> http://devinvenable.blogspot.com/2010/07/cross-compile-activemq-cpp-on-centos-5.html),
> but I core dump on start up of a tiny test program that links to cms.  I've
> built on two different machines (one a clean Centos 5.4 install)  and get
> the same result.
> 
> 

Did you try the code from 3.2.x fixes?

Try using the code from the 3.2.x fixes branch, there's been some fixes
in there that should resolve this issue, it relates to some static
objects that are using APR resources before the init method gets called
to startup the APR runtime.
https://svn.apache.org/repos/asf/activemq/activemq-cpp/branches/activemq-cpp-3.2.x

just check out the code using svn and build the library from the
activemq-cpp directory.

svn co
https://svn.apache.org/repos/asf/activemq/activemq-cpp/branches/activemq-cpp-3.2.x/activemq-cpp
activemq-cpp-3.2.x

cd activemq-cpp-3.2.x
./configure ...
make check

regards



> Starting program:
> /home/dvenable/src/TestProducer/dist/Debug/GNU-Linux-x86/testproducer
> [Thread debugging using libthread_db enabled]
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00d7a4f3 in mutex_hash () from /usr/lib/libapr-1.so.0
> (gdb) bt
> #0  0x00d7a4f3 in mutex_hash () from /usr/lib/libapr-1.so.0
> #1  0x00d7a532 in apr_atomic_add32 () from /usr/lib/libapr-1.so.0
> #2  0xf7e62a9c in
> decaf::util::concurrent::atomic::AtomicInteger::decrementAndGet() () from
> /usr/lib/libactivemq-cpp.so.12
> #3  0xf79831c6 in
> decaf::util::concurrent::atomic::AtomicRefCounter::release()
>     () from /usr/lib/libactivemq-cpp.so.12
> #4  0xf7e14e7b in decaf::lang::ArrayPointer<unsigned char,
> decaf::util::concurrent::atomic::AtomicRefCounter>::~ArrayPointer() ()
>    from /usr/lib/libactivemq-cpp.so.12
> #5  0xf7e1f350 in decaf::lang::ArrayPointer<unsigned char,
> decaf::util::concurrent::atomic::AtomicRefCounter>::reset(unsigned char*,
> int) ()
>    from /usr/lib/libactivemq-cpp.so.12
> #6  0xf7e1ea11 in
> decaf::net::InetAddress::InetAddress(std::basic_string<char,
> std::char_traits<char>, std::allocator<char> > const&, unsigned char
const*,
> int) () from /usr/lib/libactivemq-cpp.so.12
> #7  0xf7e1d56c in
> decaf::net::Inet4Address::Inet4Address(std::basic_string<char,
> std::char_traits<char>, std::allocator<char> > const&, unsigned char
const*,
> int) () from /usr/lib/libactivemq-cpp.so.12
> #8  0xf7e1dca9 in __static_initialization_and_destruction_0 ()
>    from /usr/lib/libactivemq-cpp.so.12
> #9  0xf7e1ddeb in global constructors keyed to
> _ZN5decaf3net11InetAddress13loopbackBytesE () from
> /usr/lib/libactivemq-cpp.so.12
> #10 0xf7e7b896 in __do_global_ctors_aux () from
> /usr/lib/libactivemq-cpp.so.12
> #11 0xf790fd99 in _init () from /usr/lib/libactivemq-cpp.so.12
> #12 0x00911223 in call_init () from /lib/ld-linux.so.2
> #13 0x00911333 in _dl_init_internal () from /lib/ld-linux.so.2
> #14 0x0090384f in _dl_start_user () from /lib/ld-linux.so.2
> 
> 
> ldd dist/Debug/GNU-Linux-x86/testproducer
> linux-gate.so.1 =>  (0xffffe000)
> libactivemq-cpp.so.12 => /usr/lib/libactivemq-cpp.so.12 (0xf7543000)
> libaprutil-1.so.0 => /usr/lib/libaprutil-1.so.0 (0xf7521000)
> libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0x00d51000)
> libuuid.so.1 => /lib/libuuid.so.1 (0x00b07000)
> librt.so.1 => /lib/librt.so.1 (0x00d46000)
> libcrypt.so.1 => /lib/libcrypt.so.1 (0x00a7c000)
> libexpat.so.0 => /lib/libexpat.so.0 (0x00dda000)
> libssl.so.6 => /lib/libssl.so.6 (0x00ceb000)
> libcrypto.so.6 => /lib/libcrypto.so.6 (0x00357000)
> libdl.so.2 => /lib/libdl.so.2 (0x00bbb000)
> libz.so.1 => /usr/lib/libz.so.1 (0x00bc4000)
> libpthread.so.0 => /lib/libpthread.so.0 (0x00aae000)
> libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x004b0000)
> libm.so.6 => /lib/libm.so.6 (0x0032c000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00ac9000)
> libc.so.6 => /lib/libc.so.6 (0x00922000)
> /lib/ld-linux.so.2 (0x00903000)
> libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x00b1d000)
> libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00223000)
> libcom_err.so.2 => /lib/libcom_err.so.2 (0x00ad7000)
> libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00b67000)
> libresolv.so.2 => /lib/libresolv.so.2 (0x0049a000)
> libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00b8f000)
> libkeyutils.so.1 => /lib/libkeyutils.so.1 (0x00b9a000)
> libselinux.so.1 => /lib/libselinux.so.1 (0x00b4d000)
> libsepol.so.1 => /lib/libsepol.so.1 (0x002e4000)
> 
> The same testproducer runs fine when building on 32 bit Ubuntu.  Is the fact
> that I'm cross compiling introducing a problem?  (Buiding 32 bit on 64 git
> arch)

-- 
Tim Bish

Open Source Integration: http://fusesource.com
ActiveMQ in Action: http://www.manning.com/snyder/

Follow me on Twitter: http://twitter.com/tabish121
My Blog: http://timbish.blogspot.com/


Mime
View raw message