我已经从源代码下载并构建了Wine。现在,我想使用调试器来调试某些功能-BitBlt()
。问题是,似乎看不到源代码。如您所见,当我键入'l'时,它看不到我的源代码。
sashoalm@homepc:~$ winedbg /tmp/bitblttest.exe
WineDbg starting on pid 0022
0x7b863444 DbgBreakPoint+0x4 in kernel32: popl %ebp
Wine-dbg>break BitBlt
Breakpoint 1 at 0x7ebb5501 BitBlt in gdi32
Wine-dbg>cont
Stopped on breakpoint 1 at 0x7ebb5501 BitBlt in gdi32
Wine-dbg>list
Enter path to file '' (<cr> to end search):
我已经使用
./configure
,make
和make install
编译了Wine,没有为./configure
提供特殊参数。我应该更改什么,才能看到源代码?
最佳答案
我认为您必须在运行./configure之前导出CFLAGS = -g和CXXFLAGS = -g。另外,我认为您在运行或调试时必须在当前工作目录中拥有源代码的副本。我知道这不会伤害。附带说明一下,当中断点到达屏幕时,调试绘画代码非常困难,可能需要重画自身以无限循环循环。
gdi32可能是您没有源的Windows库。本练习的一半使用Windows调用,并且可能也很难调试。
关于c - 在Wine的源代码中设置断点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23781986/