Hello,
First off, I’m brand new to ROOT, so apologies if this problem is a waste of someone’s time.
Long story short, I was trying to add a source file into root, and it crashed with a stack trace whenever I tried to use it. I wasn’t terribly surprised, since I didn’t quite yet know what I was doing, so I decided to try a very simple example. Here is said example:
[code]#include
#include
#include
using namespace std;
class testclass : public fstream {
int i;
};
int main() {
testclass test;
test.open(“C:\test.txt”, fstream::in);
string str;
getline(test, str);
cout << str << endl;
}[/code]
This code, when loaded into root, produces the same problem; I get a stack trace from ROOT, see the wonderful “root.exe has encountered a problem and needs to close” error from Windows, and that’s it. Thinking maybe this was a windows thing, I got on my linux computer and did the same thing, with no luck. Luckily, however, it gave me more information; the terrible error is a Segmentation fault.
Here is what I saw for the whole ROOT session in the command line:
Compiled on 14 December 2006 for win32.
CINT/ROOT C/C++ Interpreter version 5.16.16, November 24, 2006
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] .x setup_env.C
root [1] .L Testfile.cpp
root [2] main()
==========================================
=============== STACKTRACE ===============
==========================================
================ Thread 0 ================
ntdll!KiFastSystemCallRet()
libCore!TWinNTSystem::DispatchOneEvent()
================ Thread 1 ================
ntdll!KiFastSystemCallRet()
kernel32!WaitForSingleObject()
libWin32gdk!TGWin32ProxyBase::ForwardCallBack()
================ Thread 2 ================
ntdll!KiFastSystemCallRet()
kernel32!Sleep()
libCore!TWinNTSystem::TimerThread()
================ Thread 3 ================
libCint!G__getfunction()
libCint!G__loadlonglong()
==========================================
============= END STACKTRACE =============
==========================================
(The setup env is just a script with a gROOT->SetMacroPath() to point to a temporary folder where my testing stuff is located…I didn’t want to put that in the logon script since I don’t use it very often)
Thinking maybe I was somehow being an idiot with this, I compiled the little program externally, and it worked just fine.
Clearly, I’m missing something, but I’m not completely sure what .
Your help is highly appreciated!