P
wob schrieb:
Ah, du nutzt root! Hätte ich mir bei Hamamatsu-Sensoren denken können, die hatten wir im hcal, als ich mich noch damit beschäftigt habe
Wird damit die Anrede "Genosse" zwingend ? Bin an einem hcal recht nah dran.
wob schrieb:
In root musst du die Funktion natürlich irgendwie != main nennen, wenn du sie als Macro* mit .x ausführen willst oder mit .L laden willst. Bzw. du nennst die genauso wie deine Datei, wenn sie gleich ausgeführt werden soll, also Min.cpp.
Durch Trial & Error ist mir das schon aufgefallen, von daher aber gut zu wissen, dass das so sein muss.
wob schrieb:
Wenn du mit g++ compilierst, dann brauchst du ein main und dann ginge das so:
g++ Min.cpp $(root-config --cflags --ldflags --libs) -o dein-programm
Es gibt auch irgendwo in ein FindROOT.cmake, damit man das nicht immer von Hand machen muss.
Mein Makefile sieht etwas anders aus aber letztlich dürfte das analog sein. Habe für root I$(ROOTINC)
wob schrieb:
Ich hoffe für dich nur, dass du ein halbwegs aktuelles ROOT6 nutzt, da der C++-Interpreter von ROOT5 mistig ist (oft ist es auch mal sinnvoll mit
.x Min.cpp+g
(beachte das +) den echten Compiler zu nehmen).
Habe es letzten Monat endlich auf Version 6 gebracht, davor hatte ich V. 5, was tatsächlich eine Quälerei war.. auch jetzt könnte manches noch besser sein aber man merkt den Unterschied schon deutlich
Danke für den Tipp!
wob schrieb:
* Macro hier im Sinne von Programm, das direkt in ROOT ausgeführt wird, früher per CINT, jetzt ists Cling/LLVM. Das verwirrt C/C++-Entwickler immer, die bei Macro sofort an Präprozessor denken.
Das erklärt jetzt wiederum auch eine Konversation kürzlich