ROOT 2.24.02 users who are using RH 6.1 and gcc 2.95.2 will need to
apply the following patch if they want to compile ROOT from source.
I have attached the patch to this e-mail. Just "cd" to the top of your
ROOT source tree and feed this e-mail to patch, e.g.:
$ cd root-gcc-c++-2.95.2-2.24.02
$ patch < BTree.bug.e-mail
For reference, here is the error that you will get if you don't apply
the patch.
g++ -O2 -Wall -fPIC -DR__GLIBC
-I/mnt/hdc/projects/ROOT/2.00/rpm/BUILD/root-gcc-c++-2.95.2-2.24.02/ttf/include
-I/mnt/hdc/projects/ROOT/2.00/rpm/BUILD/root-gcc-c++-2.95.2-2.24.02/opengl/include
-D_REENTRANT -c CONT_Btree.cxx
CONT_Btree.cxx: In method `TBtInnerNode::TBtInnerNode(TBtInnerNode *,
TBtree *, TBtNode *)':
CONT_Btree.cxx:689: Internal compiler error.
CONT_Btree.cxx:689: Please submit a full bug report.
CONT_Btree.cxx:689: See
<URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for
instructions.
make[1]: *** [CONT_Btree.o] Error 1
make[1]: Leaving directory
`/mnt/hdc/projects/ROOT/2.00/rpm/BUILD/root-gcc-c++-2.95.2-2.24.02/src'
make: *** [default] Error 2
Bad exit status from /var/tmp/rpm-tmp.58277 (%build)
--
Matthew D. Langston
SLD, Stanford Linear Accelerator Center
langston@SLAC.Stanford.EDU
--- src/CONT_Btree.cxx.orig Thu Apr 6 23:55:22 2000
+++ src/CONT_Btree.cxx Mon Apr 10 12:59:32 2000
@@ -686,7 +686,8 @@
// Called only by TBtree to initialize the TBtInnerNode that is
// about to become the root.
- fItem = new TBtItem[MaxIndex()+1];
+ const Int_t index = MaxIndex() + 1;
+ fItem = new TBtItem[ index ];
if (fItem == 0)
::Fatal("TBtInnerNode::TBtInnerNode", "no more memory");
Append(0, oldroot);
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:23 MET