checkergcc and other malloc debuggers on unstable: crashes
Hi,
I am trying to find a memory problem in some code, and neither dmalloc nor
checkergcc will work on my unstable system (recent as of today). If I
compile my libraries after including <dmalloc.h>, and then run a simple app
after 'dmalloc medium', I get a segfault. I have similar problems with
checkergcc. The sample program in checkergcc's doc runs like this:
gabier% ./a.out
>From Checker (pid:02679): (oos) out of system memory.
Stack frames are:
mmap at 0xa8000000 for 3 pages
Internal error in Checker. Abort.
zsh: abort ./a.out
Oops.
Also, gdb is weird and stops in random places before main(), cannot reset
breakpoints, etc...
Any idea about what's happening and how to solve it?
Thanks!
YA
PS: I have anothe checkergcc question. How do I use checkerg++ with
libraries that haven't been compiled w/ checkerg++? I thought it would only
warn me, but it not only warns, it also cannot link, as follows:
gabier% checkerg++ conv.cpp -lyconv -licuuc
checkerg++:warning: no stubs for `-lyconv'. This library should have been
compiled with checkergcc.
checkerg++:warning: no stubs for `-licuuc'. This library should have been
compiled with checkergcc.
/tmp/cc2nbMls.o: In function `U_FAILURE(UErrorCode)':
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.ucnv_open'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.ucnv_reset'
/usr/include/unicode/utypes.h:246: undefined reference to
`chkr.ucnv_fromUnicode'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.endl(ostream
&)'/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(ostream &(*)(ostream &))'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.ucnv_close'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.yconv_open'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.yconv'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.endl(ostream
&)'/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long, short)(ostream &(*)(ostream &))'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(unsigned int)'
/usr/include/unicode/utypes.h:246: undefined reference to
`ostream::chkr.(long,
short)(char const *)'
/usr/include/unicode/utypes.h:246: undefined reference to `chkr.yconv_close'
collect2: ld returned 1 exit status
gabier%
--
My opinions do not necessarily reflect my company's.
The opposite is also true.
Reply to: