ROOT 2.23 and BRAT

From: Christian Holm Christensen (cholm@hehi03.nbi.dk)
Date: Thu Oct 28 1999 - 07:02:20 EDT


Hi Everyone,

As you may have noticed, there is a new ROOT on the streets - it's now
upto version 2.23.

Having just aquired a pretty fast machine (dual Celeron 433MHz,
128MB, IBM 22GXP 9.1Gb 7200rpm, Debian GNU/Linux 2.1, egcs-1.1.1,
circa 183 ROOT marks - pretty close to a AlphaServer 4100 5/600, quad
CPU * 600MHz, 2GB RAM), I decided to install ROOT and BRAT on it. And
why settle for anything less then the newest, best, biggest versions
of both?!

Anyway, it turned out, that I had to make some changes to the BRAT
source code for it to compile.

Therefore, for those who want to upgrade to ROOT 2.23 now, I have
enclosed a patch for the BRAT sources!

The main difference (affecting the source of BRAT), is that you can't
assume iostream.h is included in any ROOT header files, and that the
header TGXW.h is replaced by TVirtual.h (ofcourse the class TGXW
doesn't exist anymore - it is replaced by TVirtualX).

If anyone out there is running Debian GNU/Linux, here are a few tips
for installing ROOT/BRAT:

* Since ${OSTYPE} is "linux-gnu" on Debian, DO NOT put something like
        setenv BRAHMS_ARCH ${OSTYPE}
   in your ~/.cshrc (or /etc/csh.cshrc) file.
* ROOT looks for the OpenGL libraries in ${OPENGL}/lib. Install the
  package "mesag_*.deb" (from main!) and put in your ~/.cshrc file:
        setenv OPENGL /usr
* I installed ROOT and BRAT in /usr/local/apps/{root,brat} (right next
  to /usr/local/apps/cern actually). Here is what I put into
  /etc/csh.cshrc:

       setenv ROOTSYS /usr/local/apps/root
       setenv OPENGL /usr
       setenv BRATSYS /usr/local/apps/brat
       setenv BRATHOME $BRATSYS
       setenv BRAHMS_ARCH linux
       if ($?path) then
           set path = ($path $ROOTSYS/bin)
       else
           set path = ($ROOTSYS/bin)
       endif
       if ($?LD_LIBRARY_PATH) then
           setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${ROOTSYS}/lib:${BRATSYS}/lib/linux
       else
           setenv LD_LIBRARY_PATH ${ROOTSYS}/lib:${BRATSYS}/lib/linux
       endif

I hope all of this will be of some good to someone!

Happy BRAT'ing

Christian
----------------------------------------------------------------
Christian Holm Christensen Phone: (+45) 35 35 96 91
  Sankt Hansgade 23. 1, th Office: (+45) 353 25 307
  DK-2200 Copenhagen N Email: cholm@nbi.dk
  Denmark Homepage: www.nbi.dk/~cholm

*************** FILE brat_2.22-2.23.diff ***********************

diff -r VER-1-2/base/src/BrBaseMonitor.cxx brat/base/src/BrBaseMonitor.cxx
87a88
> #include <iostream.h>
760c761,762
< gval.fFont = gGXW->GetFontHandle(labelfont);

---
>    // gval.fFont = gGXW->GetFontHandle(labelfont);
>    gval.fFont = gVirtualX->GetFontHandle(labelfont);
763c765,766
<    fRedTextGC = gGXW->CreateGC(gClient->GetRoot()->GetId(), &gval);
---
>    // fRedTextGC = gGXW->CreateGC(gClient->GetRoot()->GetId(), &gval);
>    fRedTextGC = gVirtualX->CreateGC(gClient->GetRoot()->GetId(), &gval);
954c957
<    gGXW->TranslateCoordinates(main->GetId(), GetParent()->GetId(),
---
>    gVirtualX->TranslateCoordinates(main->GetId(), GetParent()->GetId(),
957a961,964
>    //gGXW->TranslateCoordinates(main->GetId(), GetParent()->GetId(),
>    //                       (((TGFrame *) main)->GetWidth() - fWidth) >> 1,
>    //                       (((TGFrame *) main)->GetHeight() - fHeight) >> 1,
>    //                       ax, ay, wdum);
984c991,992
<    gGXW->DeleteGC(fRedTextGC);
---
>    gVirtualX->DeleteGC(fRedTextGC);
>    // gGXW->DeleteGC(fRedTextGC);
diff -r VER-1-2/base/src/BrMonitorPicture.cxx brat/base/src/BrMonitorPicture.cxx
46a47,48
> #include <iostream.h>
> 
diff -r VER-1-2/bb/src/BrMonitorBB.cxx brat/bb/src/BrMonitorBB.cxx
38a39,40
> #include <iostream.h>
> 
diff -r VER-1-2/c1/src/BrMonitorC1.cxx brat/c1/src/BrMonitorC1.cxx
56a57
> #include <iostream.h>
Only in brat: include
Only in brat: lib
diff -r VER-1-2/mult/src/BrMonitorMult.cxx brat/mult/src/BrMonitorMult.cxx
64a65
> #include <iostream.h>
diff -r VER-1-2/test/Makefile brat/test/Makefile
21c21,22
< CXXFLAGS      = -w -O1 -g -KPIC -I$(ROOTSYS)/include
---
> # CXXFLAGS      = -w -O1 -g -KPIC -I$(ROOTSYS)/include
> CXXFLAGS      = -w -O1 -g -KPIC $(shell root-config --cflags)
32c33,34
< CXXFLAGS = -g -Wall  -fPIC -O $(INCLUDE) -I$(ROOTSYS)/include
---
> #CXXFLAGS = -g -Wall  -fPIC -O $(INCLUDE) -I$(ROOTSYS)/include
> CXXFLAGS = -g -Wall  -fPIC -O $(INCLUDE) $(shell root-config --cflags) 
43,52c45,56
< ifeq ($(BRAHMS_ARCH),linux)
< ROOTLIBS      = -L$(ROOTSYS)/lib -lBase -lCint -lClib -lCont -lFunc -lGraf \
< 		-lGraf3d -lHist -lHtml -lMeta -lMinuit -lNet -lPostscript \
< 		-lProof -lTree -lUnix -lZip 
< endif
< ifeq ($(BRAHMS_ARCH),sun4os5pc)
< ROOTLIBS      = -L$(ROOTSYS)/lib -lBase -lCint -lClib -lCont -lFunc -lGraf \
< 		-lGraf3d -lHist -lHtml -lMeta -lMinuit -lNet -lPostscript \
< 		-lProof -lTree -lUnix -lZip
< endif
---
> # ifeq ($(BRAHMS_ARCH),linux)
> # ROOTLIBS      = -L$(ROOTSYS)/lib -lBase -lCint -lClib -lCont -lFunc -lGraf \
> # 		-lGraf3d -lHist -lHtml -lMeta -lMinuit -lNet -lPostscript \
> # 		-lProof -lTree -lUnix -lZip 
> # endif
> # ifeq ($(BRAHMS_ARCH),sun4os5pc)
> # ROOTLIBS      = -L$(ROOTSYS)/lib -lBase -lCint -lClib -lCont -lFunc -lGraf \
> # 		-lGraf3d -lHist -lHtml -lMeta -lMinuit -lNet -lPostscript \
> # 		-lProof -lTree -lUnix -lZip
> # endif
> #
> # ROOTGLIBS     = -lGpad -lGui -lGX11 -lX3d
54c58,59
< ROOTGLIBS     = -lGpad -lGui -lGX11 -lX3d
---
> ROOTLIBS	= $(shell root-config --libs)
> ROOTGLIBS	= $(shell root-config --glibs)	
diff -r VER-1-2/tof/src/BrMonitorTof.cxx brat/tof/src/BrMonitorTof.cxx
58a59
> #include <iostream.h>
diff -r VER-1-2/zdc/src/BrMonitorZDC.cxx brat/zdc/src/BrMonitorZDC.cxx
59a60
> #include <iostream.h>

*************** FILE brat_2.22-2.23.diff ***********************



This archive was generated by hypermail 2b29 : Tue Feb 01 2000 - 20:35:20 EST