debugging problems (was Re: Suggestion - don't require sane and artsc)

Gregory M. Turner gmturner007 at ameritech.net
Wed Dec 10 15:13:36 CST 2003


On Wednesday 10 December 2003 01:52 pm, Eric Pouech wrote:
> > Indeed.  Looking at the loop in DEBUG_ReadExecutableDbgInfo, the values
> > of dyn.d_tag it iterates through look nothing like the output of "readelf
> > -d wine" (they should, right?)
>
> yup
> The numbers it shows me (after adding a trace)
>
> > don't even map to the DT_ constants I see in elf.h at all... (again, I
> > presume that they should?  fwiw, readelf -d does show a DEBUG tag)  I
> > guess, this probably means there is a problem in DEBUG_ProcessElfFile
> > finding the right address for the .dynamic section?
>
> well, I suspect we could also lookup in the wrong file. Could you check
> that the name of the main ELF module we load in the debugger is actually
> the (full path) to the wine-(p|k)thread executable.
> A+

actually, AFAICS it's just looking at "wine"... where is a good place to 
verify this (with a trace)?  Perhaps this is the whole problem?  I am not 
mentally up-to-date on the latest with wine-{k,p}thread, the wrapper, etc... 
maybe it's time to read up.

Here is one (partially homebrew) trace which may or may not already answer 
this question for you (my wine prefix is '/opt/wine'):

trace:debug:DEBUG_ProcessElfObject AAAA dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfObject BBBB dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfObject CCCC dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfObject DDDD dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfFile Processing elf file 'wine'
trace:debug:DEBUG_ProcessElfObject EEEE dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfObject FFFF dil = DIL_ERROR
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/bin/wrappers/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/local/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/opt/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file 
'/usr/i686-pc-linux-gnu/gcc-bin/3.3/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/opt/ati/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/X11R6/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file 
'/opt/sun-j2sdk-1.4.1/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file 
'/opt/sun-j2sdk-1.4.1/jre/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/qt/3/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/kde/3.1/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/usr/qt/2/bin/wine'
trace:debug:DEBUG_ProcessElfFile Processing elf file '/opt/wine/bin/wine'
trace:debug:DEBUG_ProcessElfObject GGGG dil = DIL_LOADED
trace:debug:DEBUG_ProcessElfObject HHHH dil = DIL_LOADED
trace:debug:DEBUG_ProcessElfObject IIII dil = DIL_LOADED
trace:debug:DEBUG_ProcessElfObject JJJJ dil = DIL_LOADED
trace:debug:DEBUG_ReportDIL Loaded debug information from ELF 'wine' ((nil))
trace:debug:DEBUG_ProcessElfObject KKKK dil = DIL_LOADED
trace:debug:DEBUG_ReadExecutableDbgInfo JJJJJJJJJJJJJJJ1111

Note that I have managed to get it to load symbols for wine itself -- 
apparently the problem is that I was running wine with my cwd in root of the 
build tree, although I don't understand that completely, as my $PATH does not 
include "."

-- 
gmt

"It is to be the assent and ratification of the several States,
derived from the supreme authority in each State, the authority
of the people themselves.  The act, therefore, establishing the
Constitution, will not be a NATIONAL, but a FEDERAL act." --James
Madison, Federalist No. 39





More information about the wine-devel mailing list