Vlakshmi wrote: > Hello All, > > I facing some issue while trying to debug a core file using DBX. > > The core was generated in the customers machine and never occurs in my setup. > I'm debugging this in my local machine in which DBX is installed. DBX throws > the below error while trying to read the core. > __________________________________________________________________________________________________________________________ > bash-2.03# dbx myprog core_1 > Reading myprog > core file header read successfully > Reading ld.so.1 > dbx: core file read error: address 0xff3ee000 not available > Reading libsocket.so.1 > Reading libnsl.so.1 > Reading libdl.so.1 > Reading libpegclient.so > Reading libpegcommon.so > Reading librt.so.1 > Reading libpthread.so.1 > Reading libm.so.1 > Reading libw.so.1 > Reading libdoor.so.1 > Reading libthread.so.1 > Reading libBrandChg.so > Reading libc.so.1 > Reading libmp.so.2 > Reading libaio.so.1 > Reading libc_psr.so.1 > Reading nss_files.so.1 > WARNING!! > A loadobject was found with an unexpected checksum value. > See `help core mismatch' for details, and run `proc -map' > to see what checksum values were expected and found. > dbx: warning: Some symbolic information might be incorrect. > dbx: internal error: cannot derive Thread from [EMAIL PROTECTED] -- debugger > service failed > dbx: corefile corrupted or produced on a different version of Solaris. > Ignoring > ___________________________________________________________________________________________________________________________ > > > I've ensured that the machine where the core is generated and the machine on > which I'm debugging are as similar as possible. > Also, elfdump and pstack indicate there is nothing wrong with the core and > its not corrupted. I guess this is got something to do with library mismatch. > > # uname -a ->Customer's machine > SunOS u147 5.8 Generic_117350-47 sun4u sparc SUNW,Sun-Fire-480R > > # uname -a ->My machine > SunOS sunrise 5.8 Generic_117350-47 sun4u sparc SUNW,Sun-Fire-480R > > I've also imported the following libs from the customer's machine to my > machine. > runtime linker: > /usr/lib/ld.so.1 > /usr/lib/librtld_db.so.1 > /usr/lib/sparcv9/ld.so.1 > /usr/lib/sparcv9/librtld_db.so.1 > > Still I get the same error. Please let me know if you've faced something like > this.
This is a well-known use-case, and documented in the Studio documentation suite. running loadobject -list will show you what libraries and dlload()able objects are visible to your debugging session. From that you can use loadobject -load /path/to/customer's/libraries/library and (this is *neat*) loadobject -hide /usr/lib/librtld_db.so.1 loadobject -use /path/to/customer's/libraries/librtld_db.so.1 cheers, James C. McPherson -- Senior Kernel Software Engineer, Solaris Sun Microsystems http://blogs.sun.com/jmcp http://www.jmcp.homeunix.com/blog _______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code