[Bug 773712] Re: Cannot compile CERN's program ROOT
VolkerH
773712 at bugs.launchpad.net
Tue Sep 6 07:07:53 UTC 2011
I had the same problem when compiling our own code using the ROOT
libraries (Ubuntu 11.04 64bit, gcc version 4.5.2 (Ubuntu/Linaro
4.5.2-8ubuntu4)). The attached preprocessed source file contains kind of
a minimum version to reproduce the code.
The error occurs when compiling this file with
g++ -g -O2 -c Minimum_cpp.cc
but not with
g++ -g -O -c Minimum_cpp.cc
This happens at a few places. all have in common, that they deal with a
object of class A, which had been derived from the ROOT class TObject
and which is stored in an container as TObject* and a dynamic_cast to A*
is done afterwards. The internal compiler error is reported when this
cast is done in connection with an iterator of the container, like
A* obj;
while( (A = dynamic_cast<A*>( next() ) ) { ... }
If the cast and the iterator are seperated, compilation runs through:
A* obj;
TObject* tmp;
while ( (tmp = next() ) { obj = dynamic_cast<A*>(tmp); ... }
** Attachment added: "Preprocessed code to reproduce the problem."
https://bugs.launchpad.net/ubuntu/+source/gcc-4.5/+bug/773712/+attachment/2359813/+files/Minimum_cpp.cc
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-4.5 in Ubuntu.
https://bugs.launchpad.net/bugs/773712
Title:
Cannot compile CERN's program ROOT
Status in “gcc-4.5” package in Ubuntu:
Incomplete
Bug description:
Binary package hint: gcc-4.5
Dear Community,
While attempting to install CERN's ROOT program[1], the program failed
to full compile with an output indicating the crash is g++-related.
Symbolic links were made with the suggestion of Ref 2.
[1] ROOT source package
http://root.cern.ch/drupal/content/production-version-528
Installation instructions:
http://root.cern.ch/drupal/content/installing-root-source
[2] http://www.quantumdiaries.org/2011/04/29/new-ubuntu-linux-11-04/
My history (pretty straightforward):
cd ./Desktop/
gzip -dc root_v5.28.00c.source.tar.gz | tar -xf -
cd ./root/
./configure linuxx8664gcc
make
root
root -l
sudo make
./configure linuxx8664gcc
make
history
Last lines of my terminal output (First attempt):
g++ -O2 -pipe -m64 -Wshadow -Wall -W -Woverloaded-virtual -fPIC -Iinclude -pthread -o proof/proof/src/TDataSetManager.o -c /home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx
/home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx: In member function ‘virtual void TDataSetManager::MonitorUsedSpace(TVirtualMonitoringWriter*)’:
/home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx:708:1: internal compiler error: in redirect_jump, at jump.c:1443
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.5/README.Bugs> for instructions.
make: *** [proof/proof/src/TDataSetManager.o] Error 1
Last lines of my terminal output (Second attempt):
==> lib/libCore.so done
bin/rmkdepend -R -fproof/proof/src/TDataSetManager.d -Y -w 1000 -- -pipe -m64 -Wshadow -Wall -W -Woverloaded-virtual -fPIC -Iinclude -pthread -D__cplusplus -- /home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx
g++ -O2 -pipe -m64 -Wshadow -Wall -W -Woverloaded-virtual -fPIC -Iinclude -pthread -o proof/proof/src/TDataSetManager.o -c /home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx
/home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx: In member function ‘virtual void TDataSetManager::MonitorUsedSpace(TVirtualMonitoringWriter*)’:
/home/richard/Desktop/root/proof/proof/src/TDataSetManager.cxx:708:1: internal compiler error: in redirect_jump, at jump.c:1443
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.5/README.Bugs> for instructions.
make: *** [proof/proof/src/TDataSetManager.o] Error 1
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-4.5/+bug/773712/+subscriptions
More information about the foundations-bugs
mailing list