Dear all,
I’m using the MathMore library to have access to the ROOT::Math::GSLIntegrator.
I had some warnings from the the GSL via ROOT such as :
and I suppressed them by redefining the GSLError.h in my source code :
// Header file for class GSLError
#ifndef ROOT_Math_GSLError
#define ROOT_Math_GSLError
//#if defined(G__DICTIONARY)
#include "gsl/gsl_errno.h"
#include "TError.h"
#include "TSystem.h"
namespace ROOT {
namespace Math {
/**
class to change GSL Error handler to use ROOT one.
It is used only when building the dictionary (G__DICTIONARY is defined)
and not in the stand-alone version of the library.
In that case the default GSL error handler is used
*/
class GSLError {
public:
GSLError() {
//gsl_set_error_handler(&GSLError::Handler);
gsl_set_error_handler_off();//&GSLError::Handler); // JLK : turn off message errors from GSL
// set a new handler for GSL
}
static void Handler(const char * reason, const char * file, int line, int gsl_errno) {
Error("GSLError","Error %d in %s at %d : %s",gsl_errno,file,line,reason);
}
};
}
}
// re-define the default error handler when loading the library
ROOT::Math::GSLError gGSLError;
//#endif
#endif /* ROOT_Math_GSLError */
Since the last version of ROOT, even if I redefine the GSLError.h header, I can’t get ride of the GSL errors, and I’ve got a tone of line like this :
Is there an new way to get ride of them?
I’m using a macbook pro with Mac OS 10.7.5 and the last version of ROOT root_v5.34.03 compiled from source with the following options :
Cheers,
Julien