43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
// Pick your poison.
 | 
						|
//
 | 
						|
// On GNU/Linux, you have few choices to get the most out of your stack trace.
 | 
						|
//
 | 
						|
// By default you get:
 | 
						|
//	- object filename
 | 
						|
//	- function name
 | 
						|
//
 | 
						|
// In order to add:
 | 
						|
//	- source filename
 | 
						|
//	- line and column numbers
 | 
						|
//	- source code snippet (assuming the file is accessible)
 | 
						|
 | 
						|
// Install one of the following libraries then uncomment one of the macro (or
 | 
						|
// better, add the detection of the lib and the macro definition in your build
 | 
						|
// system)
 | 
						|
 | 
						|
// - apt-get install libdw-dev ...
 | 
						|
// - g++/clang++ -ldw ...
 | 
						|
// #define BACKWARD_HAS_DW 1
 | 
						|
 | 
						|
// - apt-get install binutils-dev ...
 | 
						|
// - g++/clang++ -lbfd ...
 | 
						|
// #define BACKWARD_HAS_BFD 1
 | 
						|
 | 
						|
// - apt-get install libdwarf-dev ...
 | 
						|
// - g++/clang++ -ldwarf ...
 | 
						|
// #define BACKWARD_HAS_DWARF 1
 | 
						|
 | 
						|
// Regardless of the library you choose to read the debug information,
 | 
						|
// for potentially more detailed stack traces you can use libunwind
 | 
						|
// - apt-get install libunwind-dev
 | 
						|
// - g++/clang++ -lunwind
 | 
						|
// #define BACKWARD_HAS_LIBUNWIND 1
 | 
						|
 | 
						|
#include "backward.hpp"
 | 
						|
 | 
						|
namespace backward {
 | 
						|
 | 
						|
backward::SignalHandling sh;
 | 
						|
 | 
						|
} // namespace backward
 |