Personal tools

WxHaskell/Development/Debugging

From HaskellWiki

< WxHaskell | Development(Difference between revisions)
Jump to: navigation, search
(Added Category:wxHaskell)
(Windows: Added Exception code 0xC0000139)
 
(3 intermediate revisions by one user not shown)
Line 9: Line 9:
 
=== Crashes ===
 
=== Crashes ===
  
When your wxHaskell program crashes, look in the [http://maximumpcguides.com/windows-7/how-to-check-system-logs-in-the-event-viewer/ application audit log] for an error message and make a note of the exception code. Use a search engine to find an explanation for this code.
+
When your wxHaskell program crashes, look in the [http://maximumpcguides.com/windows-7/how-to-check-system-logs-in-the-event-viewer/ application audit log] for an error message and make a note of the exception code. Look at Microsoft's [https://msdn.microsoft.com/en-us/library/cc704588.aspx NTSTATUS values page], or use a search engine to find an explanation for this code.
  
 
==== Exception code 0x40010006 ====
 
==== Exception code 0x40010006 ====
  
 
This code indicates that a debug message is written, probably by wxWidgets. Run your wxHaskell program in the [https://www.gnu.org/software/gdb/ GNU debugger] to see the debug message(s).
 
This code indicates that a debug message is written, probably by wxWidgets. Run your wxHaskell program in the [https://www.gnu.org/software/gdb/ GNU debugger] to see the debug message(s).
 +
 +
==== Exception code 0xC0000005 ====
 +
 +
Access violation, also called [https://en.wikipedia.org/wiki/General_protection_fault General Protection Fault]. May indicate an API incompatibility.
 +
 +
==== Exception code 0xC000007B ====
 +
 +
If you get an exception code 0xC000007B immediately after starting your wxHaskell program, there is a mismatch between the bitness of your program and the bitness of the wxWidgets DLLs. Note, that the package wxc checks the bitness at installation time, but things can go wrong afterwards, like changing the search path to point to a different version of the wxWidgets DLLs.
 +
 +
==== Exception code 0xC0000139 ====
 +
 +
Procedure entry point not found in DLL; it is unknown why this sometimes happens, but might be resolved by cleaning up intermediate files from the compiler and compiling everything again.
  
  
 
[[Category:wxHaskell]]
 
[[Category:wxHaskell]]

Latest revision as of 23:10, 28 January 2016

This article is a stub. You can help by expanding it.


Some tips on debugging


Contents

[edit] 1 Windows

[edit] 1.1 Crashes

When your wxHaskell program crashes, look in the application audit log for an error message and make a note of the exception code. Look at Microsoft's NTSTATUS values page, or use a search engine to find an explanation for this code.

[edit] 1.1.1 Exception code 0x40010006

This code indicates that a debug message is written, probably by wxWidgets. Run your wxHaskell program in the GNU debugger to see the debug message(s).

[edit] 1.1.2 Exception code 0xC0000005

Access violation, also called General Protection Fault. May indicate an API incompatibility.

[edit] 1.1.3 Exception code 0xC000007B

If you get an exception code 0xC000007B immediately after starting your wxHaskell program, there is a mismatch between the bitness of your program and the bitness of the wxWidgets DLLs. Note, that the package wxc checks the bitness at installation time, but things can go wrong afterwards, like changing the search path to point to a different version of the wxWidgets DLLs.

[edit] 1.1.4 Exception code 0xC0000139

Procedure entry point not found in DLL; it is unknown why this sometimes happens, but might be resolved by cleaning up intermediate files from the compiler and compiling everything again.