Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
d3d9_debugging [2014/10/25 15:44]
okias
d3d9_debugging [2014/11/10 02:51]
sarnex typo
Line 3: Line 3:
 Compile both Mesa-3D and Wine with **CFLAGS** and **CXXFLAGS** set to debug. Compile both Mesa-3D and Wine with **CFLAGS** and **CXXFLAGS** set to debug.
  
-<code>CFLAGS="-Og -ggdb -pg -g -gdwarf-2 -gstrict-dwarf" CXXFLAGS="${CFLAGS}"</code>+<code>CFLAGS="-Og -ggdb -g -gdwarf-2 -gstrict-dwarf" CXXFLAGS="${CFLAGS}"</code>
  
   * **-Og** is better than -O0 and disable optimalization which interferes with debug (gcc >= 4.8)   * **-Og** is better than -O0 and disable optimalization which interferes with debug (gcc >= 4.8)
-  * **-ggdb, -pg, -g** adds debug information to code +  * **-ggdb, -g** adds debug information to code
-    * * if wine build fails, rebuild after removing -pg+
   * **-gdwarf-2, -gstrict-dwarf** limit DWARF version to 2. It's necessary for both, because wine support is limited to version 2.   * **-gdwarf-2, -gstrict-dwarf** limit DWARF version to 2. It's necessary for both, because wine support is limited to version 2.
 +  * you can also add **-pg** for profiling. Beware - may cause compilation issues.
  
 Also configure Mesa-3D with <code>--enable-debug</code> Also configure Mesa-3D with <code>--enable-debug</code>
Line 18: Line 18:
   * the **NINE_DEBUG** variable, to know what the D3D9 ST is doing. Pass **NINE_DEBUG=help** to get all options.   * the **NINE_DEBUG** variable, to know what the D3D9 ST is doing. Pass **NINE_DEBUG=help** to get all options.
   * the **NINE_TGSI_DUMP=1** variable for dumping generated TGSI code.   * the **NINE_TGSI_DUMP=1** variable for dumping generated TGSI code.
 +  * the **NINE_FF_DUMP=1** variable for dumping shader generated by fixed function (ff)
   * the **TGSI_PRINT_SANITY=1** variable will precisely check TGSI and assert in case of errors   * the **TGSI_PRINT_SANITY=1** variable will precisely check TGSI and assert in case of errors
   * the **D3D_ALWAYS_SOFTWARE=1** will run it on CPU instead of GPU... //extremly slow//   * the **D3D_ALWAYS_SOFTWARE=1** will run it on CPU instead of GPU... //extremly slow//
Line 35: Line 36:
   * The Windows version is almost always required for replaying   * The Windows version is almost always required for replaying
  
-  * [[https://github.com/apitrace/apitrace|Code on github]] +When uploading APITrace .trace file, please compress it with xz (best compression -> ''xz -9e your_app.trace''
-  * [[http://people.freedesktop.org/~jrfonseca/apitrace/|Build for Windows]]+  * **We have dedicated server space for APITrace files, contact sarnex or okias on IRC for more information.** 
 +  * [[https://github.com/apitrace/apitrace/wiki/WINE#windows-native|Wine HOWTO]] 
 +  * [[http://people.freedesktop.org/~jrfonseca/apitrace/apitrace-msvc-latest.7z|Build suitable for Wine]]