文書の過去の版を表示しています。
Errors
CINT
- CINT で #include <cstdio> が書かれた macro を複数回実行すると、プログラムを閉じる時に segmentation violation が起きる。なんで?macro 中で #include <cstdio> を使ってはいけないようだ。関数などのコメントアウトの仕方を変えると、エラーの内容が変わるのでデバッグ仕辛いので注意。複数回 macro を実行する場合は #include に注意。
- TH1::Fit(fitfunc,“R+”) で使用する fitfunc の具体的定義は macro の一番初めに書かないと segmentation violation が起きたり、
Error: Cint::G__CallFunc::SetArgArray() must be initialized with 'Cint::G__CallFunc::SetFunc(G__ClassInfo* cls,char* fname,char* args,long* poffset)' first
となったり、
*** Break *** segmentation violation =========================================================== There was a crash. This is the entire stack trace of all threads: =========================================================== #0 0x00007f1e1d6c727c in __libc_waitpid (pid=15528, stat_loc=stat_loc entry=0x7ffdde5e5be0, options=options entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31 ... ... ...
となったりする。
- CINT で #include “TH1D.h” と書かれた macro を複数回実行すると、ROOT のプログラムを閉じる際に以下のエラーがでる。
!!!Fatal Error: Interpreter memory overwritten by illegal access.!!! !!!Terminate session!!! *** Break *** segmentation violation =========================================================== There was a crash. This is the entire stack trace of all threads: =========================================================== #0 0x00007f2a4dc9127c in __libc_waitpid (pid=13574, stat_loc=stat_loc entry=0x7ffd1e99d8a0, options=options entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31 #1 0x00007f2a4dc14c72 in do_system (line=<optimized out>) at ../sysdeps/posix/system.c:148 #2 0x00007f2a4e945cb9 in TUnixSystem::StackTrace() () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #3 0x00007f2a4e9478dc in TUnixSystem::DispatchSignals(ESignals) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #4 <signal handler called> #5 0x00007f2a4d32588d in G__destroy_upto () from /home/kobayash/cern/root_v5.34.36/lib/root/libCint.so #6 0x00007f2a4d32642c in G__scratch_globals_upto () from /home/kobayash/cern/root_v5.34.36/lib/root/libCint.so #7 0x00007f2a4e90b450 in TCint::ResetGlobals() () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #8 0x00007f2a4e88f741 in TROOT::EndOfProcessCleanups(bool) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #9 0x00007f2a4e942720 in TUnixSystem::Exit(int, bool) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #10 0x00007f2a29c75932 in G__histbrowser_C_ACLiC_dict_3035_0_2(G__value*, char const*, G__param*, int) () from /home/kobayash/ana/koba/GRUTinizer/./kobamac/root/histbrowser_C.so #11 0x00007f2a4d3846fb in Cint::G__CallFunc::Execute(void*) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCint.so #12 0x00007f2a4e90d04c in TCint::CallFunc_Exec(void*, void*) const () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #13 0x00007f2a4e8895c4 in TQConnection::ExecuteMethod() () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #14 0x00007f2a4e8e192f in TQObject::Emit(char const*) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #15 0x00007f2a3fc67498 in TGMainFrame::HandleClientMessage(Event_t*) () from /home/kobayash/cern/root_v5.34.36/lib/root/libGui.so #16 0x00007f2a3fc75060 in TGFrame::HandleEvent(Event_t*) () from /home/kobayash/cern/root_v5.34.36/lib/root/libGui.so #17 0x00007f2a3fccba78 in TGClient::HandleEvent(Event_t*) () from /home/kobayash/cern/root_v5.34.36/lib/root/libGui.so #18 0x00007f2a3fccbd2d in TGClient::ProcessOneEvent() () from /home/kobayash/cern/root_v5.34.36/lib/root/libGui.so #19 0x00007f2a3fccbd8d in TGClient::HandleInput() () from /home/kobayash/cern/root_v5.34.36/lib/root/libGui.so #20 0x00007f2a4e947b48 in TUnixSystem::DispatchOneEvent(bool) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #21 0x00007f2a4e894cd6 in TSystem::InnerLoop() () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #22 0x00007f2a4e895880 in TSystem::Run() () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #23 0x00007f2a4e8aa54f in TApplication::Run(bool) () from /home/kobayash/cern/root_v5.34.36/lib/root/libCore.so #24 0x00007f2a4e4d2ba7 in TRint::Run(bool) () from /home/kobayash/cern/root_v5.34.36/lib/root/libRint.so #25 0x0000000000401028 in main () =========================================================== The crash is most likely caused by a problem in your script. Try to compile it (.L myscript.C+g) and fix any errors. If that does not help then please submit a bug report at http://root.cern.ch/bugs. Please post the ENTIRE stack trace from above as an attachment in addition to anything else that might help us fixing this issue. Root >
具体的には fit_eg.C を4回以上CINTで実行すると起こった。TH1D.h のインクルードをやめ、#include “TH1D.h” とすると、問題がおきなくなった。なんで?