[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: c++ autoconf added
On Mar 18, 8:39pm, Marcel Ruff wrote:
> Subject: Re: c++ autoconf added
> Cory Bennett wrote:
> >
> > At this point in testsuite/c++ only TestGet, TestLogin, TestSub and RamTest
> > actually compile. for the client* they seem to be missing
BlasterCallback_skel
> > and I dont know where that is from.
>
> This is in xmlBlaster/src/c++/generated/xmlBlaster.h
>
> My output (the old Makefiles):
> ...
I added in compiles for clientBOA and clientPOA. The seem to work fine for me.
> > Also the TestLogin and TestSub seem to start, but they core dump (SEGV)
when
> > run. That may be due to some compile option I am missing, but I didnt see
> > anything.
>
> This is my TestLogin:
>
> ruff:~/xmlBlaster/testsuite/c++/bin$ ldd TestLogin
> libxerces-c1_2.so => /opt/xerces/lib/libxerces-c1_2.so
> (0x40015000)
> libpthread.so.0 => /lib/libpthread.so.0 (0x4012e000)
> libdl.so.2 => /lib/libdl.so.2 (0x40141000)
> libmico2.3.1.so => /usr/local/mico/lib/libmico2.3.1.so
> (0x40145000)
> libmicocoss2.3.1.so => /usr/local/mico/lib/libmicocoss2.3.1.so
> (0x4060e000)
> libstdc++-libc6.1-2.so.3 => /usr/lib/libstdc++-libc6.1-2.so.3
> (0x409ec000)
> libc.so.6 => /lib/libc.so.6 (0x40a35000)
> libm.so.6 => /lib/libm.so.6 (0x40b18000)
> /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
>
TestLogin still gives me a SEGV. This is what I get from gdb:
Core was generated by `TestLogin -iorFile /tmp/ior.dat'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/local/lib/libsocks5_sh.so...bdone.
Reading symbols from /usr/local/lib/libxerces-c1_4.so...done.
Reading symbols from /lib/libpthread.so.0...tdone.
Reading symbols from /usr/local/lib/libmico2.3.5.so...
done.
Reading symbols from /lib/libdl.so.2...done.
Reading symbols from /usr/local/lib/libmicocoss2.3.5.so...done.
Reading symbols from /lib/libm.so.6...done.
Reading symbols from /usr/lib/libstdc++-libc6.1-1.so.2...done.
Reading symbols from /lib/libc.so.6...done.
Reading symbols from /lib/ld-linux.so.2...done.
Reading symbols from /lib/libresolv.so.2...done.
Reading symbols from /lib/libnss_files.so.2...done.
Reading symbols from /lib/libnss_nisplus.so.2...done.
Reading symbols from /lib/libnsl.so.1...done.
Reading symbols from /lib/libnss_nis.so.2...done.
Reading symbols from /lib/libnss_dns.so.2...done.
#0 0x409e0f93 in __libc_free (mem=0x809b0ba) at malloc.c:3012
3012 malloc.c: No such file or directory.
(gdb) bt
#0 0x409e0f93 in __libc_free (mem=0x809b0ba) at malloc.c:3012
#1 0x40443d2e in __builtin_vec_delete (ptr=0x809b0ba) from
/usr/local/lib/libmico2.3.5.so
#2 0x40307cc9 in CORBA::string_free () from /usr/local/lib/libmico2.3.5.so
#3 0x403079ef in CORBA::String_var::~String_var () from
/usr/local/lib/libmico2.3.5.so
#4 0x808a507 in serverIdl::MessageUnit::~MessageUnit (this=0xbffff69c,
__in_chrg=2) at ../client/DefaultCallback.h:109
#5 0x806b0de in main (args=3, argc=0xbffff794) at TestLogin.cc:316
It looks like it might be a bug in libmico2.3.5.so, since yours seems to work
and mine doesnt. The library is the only difference that I can see.
Something that is definately odd is that 'gettimeofday' gets called 58 thousand
times:
[c++]$ strace TestLogin -iorFile /tmp/ior.dat 2>&1 | grep -c gettimeofday
58467
I will try to get an older version of mico an see if that fixes it.
Also with TestSub I get a SIGABRT at TestSub.cc:228. Does yours work?
> I did a:
>
> configure --with-cpp --with-mico=/usr/local/mico
> --with-xerces-c=/opt/xerces
>
>
> gmake run fine until:
>
> c++ -g -o TestLogin TestLogin.o
> /home/ruff/xmlBlaster/src/c++/generated/xmlBlaster.o
> /home/ruff/xmlBlaster/src/c++/util/CompatibleCorba.o
> /home/ruff/xmlBlaster/src/c++/util/Log.o
> /home/ruff/xmlBlaster/src/c++/client/CorbaConnection.o -L/opt/xerces/lib
> -lxerces-c1_2 -L/usr/local/mico/lib -lmico2.3.1 -ldl -lm
> -L/usr/local/mico/lib -lmicocoss2.3.1 -ldl -lm
> /opt/xerces/lib/libxerces-c1_2.so: undefined reference to
> `pthread_mutexattr_destroy'
> /opt/xerces/lib/libxerces-c1_2.so: undefined reference to
> `pthread_mutexattr_settype'
> /opt/xerces/lib/libxerces-c1_2.so: undefined reference to
> `pthread_mutexattr_init'
> collect2: ld returned 1 exit status
I have fixed this. pthreads is now linked in.