Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
d3d9_debugging [2014/03/15 14:27] okias zhasha on irc quotes |
d3d9_debugging [2022/07/11 10:41] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== How to debug D3D9 ====== | ====== How to debug D3D9 ====== | ||
| - | It depends on issue, you need to figure out, where is problem. | + | Compile both Mesa-3D and Wine with **CFLAGS** and **CXXFLAGS** set to debug. |
| - | If it's in mesa, you'll need use NINE_DEBUG variable, to know what D3D9 ST doing. | + | |
| - | For wine, WINEDEBUG=+d3dadapter9, | + | < |
| + | |||
| + | * **-Og** is better than -O0 and disable optimalization which interferes with debug (gcc >= 4.8) | ||
| + | * **-ggdb, -g** adds debug information | ||
| + | * **-gdwarf-2, -gstrict-dwarf** limit DWARF version to 2. It's necessary for both, because wine support | ||
| + | * you can also add **-pg** for profiling. Beware - may cause compilation issues. | ||
| + | |||
| + | Also configure Mesa-3D with < | ||
| + | |||
| + | Make **sure**, you have **disabled striping debug symbols** if you are using distribution packages, ebuild or AUR. | ||
| + | |||
| + | A problem | ||
| + | If it's in mesa, you'll need to use [[https:// | ||
| + | |||
| + | when you comparing logs from ALWAYS_SOFTWARE, is handy to get rid of different addr for diff, with this helps you | ||
| + | |||
| + | '' | ||
| + | |||
| + | For wine, **WINEDEBUG**=+d3dadapter9, | ||
| + | |||
| + | |||
| + | You also may be interested in apitrace. | ||
| - | You maybe also interested in apitrace [[https:// | ||
| == APITrace == | == APITrace == | ||
| - | | + | {{ : |
| - | * Windows version is almost always required for replaying | + | * **For apitrace to work, you need to use the no_external_dll branch of iXit/ |
| + | | ||
| + | * The Windows version is almost always required for replaying | ||
| + | |||
| + | When uploading APITrace .trace file, please repack it with brotli (best compression -> '' | ||
| + | * [[https:// | ||
| + | * [[http:// | ||