SuperNEMO-DBD / homebrew-cadfael

Instructions on using/installing the SuperNEMO Software are now at: https://github.com/SuperNEMO-DBD/brew
MIT License
2 stars 1 forks source link

ROOT 5.34.30 fails to compile (2nd part) #6

Closed xgarrido closed 8 years ago

xgarrido commented 8 years ago

I am now using gcc/g++ from my machine as you suggest in issue #5. I got the same issue as mentionned here. I have tried to move to head version of root i.e. the one refering to v5-34-00-patches by doing

brew install root5 --c++11 --HEAD

but it fails (btw I had to disable patch application due to different input files, maybe something like

   if not build.head?
     patch :DATA
   end

will prevent that in root5 formula).

I just copy here where the error may come from (brew gist-logs root5 takes too long)

[ 68%] Building CXX object graf2d/graf/CMakeFiles/Graf.dir/src/TImage.cxx.o
cd /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/graf2d/graf && /home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/bin/g++-5  -std=c++11  -DGraf_EXPORTS -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/include -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hist/hist/inc -I/home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/opt/freetype/include/freetype2 -I/usr/include/freetype2  -Os -w -pipe -march=core2  -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -pthread -Wno-deprecated-declarations -O2 -DNDEBUG -fPIC   -o CMakeFiles/Graf.dir/src/TImage.cxx.o -c /home/garrido/.tmp/root520160227-32176-1v9zzyj/graf2d/graf/src/TImage.cxx
Fatal in <TVirtualStreamerInfo::Factory>: Cannot find the plugin handler for TVirtualStreamerInfo! However $ROOTSYS/etc/plugins/TVirtualStreamerInfo is accessible, Check the content of this directory!
aborting
[ 68%] Building CXX object graf2d/graf/CMakeFiles/Graf.dir/src/TPieSlice.cxx.o
cd /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/graf2d/graf && /home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/bin/g++-5  -std=c++11  -DGraf_EXPORTS -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/include -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hist/hist/inc -I/home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/opt/freetype/include/freetype2 -I/usr/include/freetype2  -Os -w -pipe -march=core2  -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -pthread -Wno-deprecated-declarations -O2 -DNDEBUG -fPIC   -o CMakeFiles/Graf.dir/src/TPieSlice.cxx.o -c /home/garrido/.tmp/root520160227-32176-1v9zzyj/graf2d/graf/src/TPieSlice.cxx
[ 68%] Building CXX object proof/proofplayer/CMakeFiles/ProofPlayer.dir/src/TProofMonSenderSQL.cxx.o
cd /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/proof/proofplayer && /home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/bin/g++-5  -std=c++11  -DProofPlayer_EXPORTS -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/include  -Os -w -pipe -march=core2  -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -pthread -Wno-deprecated-declarations -O2 -DNDEBUG -fPIC   -o CMakeFiles/ProofPlayer.dir/src/TProofMonSenderSQL.cxx.o -c /home/garrido/.tmp/root520160227-32176-1v9zzyj/proof/proofplayer/src/TProofMonSenderSQL.cxx
[ 68%] Building CXX object proof/proofplayer/CMakeFiles/ProofPlayer.dir/src/TStatsFeedback.cxx.o
cd /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/proof/proofplayer && /home/garrido/Workdir/NEMO/supernemo/snware/brew/cadfaelbrew/bin/g++-5  -std=c++11  -DProofPlayer_EXPORTS -I/home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/include  -Os -w -pipe -march=core2  -pipe -m64 -Wall -W -Woverloaded-virtual -fPIC -pthread -Wno-deprecated-declarations -O2 -DNDEBUG -fPIC   -o CMakeFiles/ProofPlayer.dir/src/TStatsFeedback.cxx.o -c /home/garrido/.tmp/root520160227-32176-1v9zzyj/proof/proofplayer/src/TStatsFeedback.cxx
#0  0x00007f295f5d038a in waitpid () from /usr/lib/libc.so.6
#1  0x00007f295f5581eb in do_system () from /usr/lib/libc.so.6
#2  0x00007f2961113ff3 in TUnixSystem::StackTrace() () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#3  0x00007f296116e89a in DefaultErrorHandler(int, bool, char const*, char const*) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#4  0x00007f296116e306 in ErrorHandler () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#5  0x00007f296116e752 in Fatal(char const*, char const*, ...) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#6  0x00007f29610da8d7 in TVirtualStreamerInfo::Factory() () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#7  0x00007f29610e671f in TClass::GetStreamerInfo(int) const () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#8  0x00007f296110da87 in TStreamerBase::InitStreaming() () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#9  0x00007f296110dc27 in TStreamerBase::TStreamerBase(char const*, char const*, int) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#10 0x00007f29622f816e in TStreamerInfo::Build() () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#11 0x00007f2962303706 in TBufferFile::WriteClassBuffer(TClass const*, void*) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#12 0x00007f2962300486 in TKey::TKey(TObject const*, char const*, int, TDirectory*) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#13 0x00007f296221e665 in TFile::CreateKey(TDirectory*, TObject const*, char const*, int) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#14 0x00007f2962234504 in TDirectoryFile::WriteTObject(TObject const*, char const*, char const*, int) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#15 0x00007f296115dbbd in TObject::Write(char const*, int, int) const () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libCore.so
#16 0x00007f2962232b29 in TDirectoryFile::Write(char const*, int, int) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#17 0x00007f296222b763 in TFile::Write(char const*, int, int) () from /home/garrido/.tmp/root520160227-32176-1v9zzyj/hb-build-root/lib/libRIO.so
#18 0x000000000040102d in hsimple() ()
#19 0x00007f295f539710 in __libc_start_main () from /usr/lib/libc.so.6
#20 0x0000000000400ca9 in _start ()
CMakeFiles/hsimple.dir/build.make:63 : la recette pour la cible « hsimple.root » a échouée
make[2]: *** [hsimple.root] Abandon (core dump créé)
make[2]: *** Suppression du fichier « hsimple.root »

Maybe it's time to switch to root6, what do you think ?

drbenmorgan commented 8 years ago

This should now be patched in 0c3e739. The main issue is that the 5.34 patches branch introduced a bug that results in the gnuinstall option being forced off. That causes part of the build process, namely the run of the hsimple executable to fail.

The root5 formulae now patches this inplace for the HEAD build, and also only applies the main patches for 5.34 for stable builds. Please try

$ brew update
$ brew install root5 --c++11 --HEAD

again and report any further issues.

xgarrido commented 8 years ago

The commit fixes the issue and root5 has been installed "properly" i.e. without any X11 libraries so no GUI stuff. It may be a problem for flvisualize. In cadfael it was possible to activate X11 as well as asimage libraries linking by doing

cmake ... 
  -Dport/root+x11=ON         
  -Dport/root+asimage=ON

I see some comments in your root5 formula about asimage and freetype but is it possible to revive these options ? Something equivalent to what you did for geant4 formula ? Something like option "with-x11", "Build X11 driver" if OS.linux?

drbenmorgan commented 8 years ago

I've updated the root5 formula to use gminimal by default, so graphics should always be built. I've also made builtin asimage and freetype the defaults.

xgarrido commented 8 years ago

Getting gminimal option back, I got almost a working copy of root binary. I still have an issue with the asimage library since the library is not installed. Adding

args << "-Dasimage=ON"

to cmakeoption solves the problem (it is quite strange since this option seems to be activated by default as written here). With this option ON I have now a working version of root with GUI stuff.

drbenmorgan commented 8 years ago

Thanks, added that line to the formula. There have been some changes in the last day to how the options get force set under the minimal/gminimal options on the head of the 5-34-00-patches branch, so you might have bumped into those.