Opened 10 years ago

Closed 8 years ago

#44073 closed defect (fixed)

root6: .demo doesn't work

Reported by: szhorvat (Szabolcs Horvát) Owned by: cjones051073 (Chris Jones)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: mojca (Mojca Miklavec)
Port: root6

Description (last modified by mojca (Mojca Miklavec))

The .demo command doesn't work MacPort's root6. If I download root from CERN directly, it does work. BTW I'm new to root.

Please see the transcript:

:~ $ root6
   ----------------------------------------------------------------
  | Welcome to ROOT 6.00/00                    http://root.cern.ch |
  |                                   (c) 1995-2014, The ROOT Team |
  | Built for macosx64                                             |
  | From heads/master@v5-99-06-967-gdd4636e, Jun 18 2014, 00:22:00 |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'     |
   ----------------------------------------------------------------

root [0] .demo
IncrementalExecutor::runStaticInitializersOnce: symbol '_ZN11TControlBarC1EPKcS1_ii' unresolved while linking static initializer '_GLOBAL__I_a'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar14SetButtonWidthEj' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar4ShowEv' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar9AddButtonEPKcS1_S1_S1_' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
root [1] 

Package version:

root6 @6.00.00_1 (science)
Variants:             avahi, clang33, clang34, clang35, [+]cocoa, debug, fftw3,
                      fitsio, gcc47, [+]gcc48, gcc49, [+]graphviz, [+]gsl, ldap,
                      mariadb, [+]minuit2, mysql, mysql51, mysql55, odbc,
                      [+]opengl, percona, pythia, python26, python27, [+]roofit,
                      [+]soversion, [+]ssl, [+]tmva, x11, [+]xml, xrootd

Change History (23)

comment:1 Changed 10 years ago by szhorvat (Szabolcs Horvát)

Sorry about the bad formatting. Let me try again:

   ----------------------------------------------------------------
  | Welcome to ROOT 6.00/00                    http://root.cern.ch |
  |                                   (c) 1995-2014, The ROOT Team |
  | Built for macosx64                                             |
  | From heads/master@v5-99-06-967-gdd4636e, Jun 18 2014, 00:22:00 |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'     |
   ----------------------------------------------------------------

root [0] .demo
IncrementalExecutor::runStaticInitializersOnce: symbol '_ZN11TControlBarC1EPKcS1_ii' unresolved while linking static initializer '_GLOBAL__I_a'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar14SetButtonWidthEj' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar4ShowEv' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar9AddButtonEPKcS1_S1_S1_' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
root [1] 

comment:2 Changed 10 years ago by mojca (Mojca Miklavec)

Cc: jonesc@… removed
Description: modified (diff)
Owner: changed from macports-tickets@… to jonesc@…
Version: 2.3.0

comment:3 Changed 10 years ago by mojca (Mojca Miklavec)

Summary: root6 package: .demo doesn't workroot6: .demo doesn't work

comment:4 Changed 10 years ago by mojca (Mojca Miklavec)

Confirmed on 10.7 as well. While this is apparently MacPorts-specific, I would really need to ask the upstream ROOT developers for help (unless Chris knows what to do and where to look for clues).

Chris, I trust you that you will be able to ask in a proper way as we cannot avoid mentioning the package manager this time ;)

Last edited 10 years ago by mojca (Mojca Miklavec) (previous) (diff)

comment:5 Changed 10 years ago by cjones051073 (Chris Jones)

Works for me on OSX 10.9 ...

I've not used the .demo command before, so not sure what to suggest. Also, if I cannot reproduce it (I only have access to OSX 10.9) it doesn't help ...

Chris

Last edited 10 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:6 Changed 10 years ago by cjones051073 (Chris Jones)

b.t.w. ROOT 6.00.01 was released today. Perhaps the first thing to do is to update to this and try again first....

comment:7 Changed 10 years ago by szhorvat (Szabolcs Horvát)

I forgot to mention that I also use OS X 10.9.3. Let me know if you need additional information about my system.

comment:8 Changed 10 years ago by cjones051073 (Chris Jones)

searching for one of the symbols that your report claims is missing

pb-d-128-141-238-251 /opt/local/libexec/root6/lib/root > nm -oa *.6.so | grep _ZN11TControlBarC1EPKcS1_ii
libGpad.6.so: 0000000000019ef0 T __ZN11TControlBarC1EPKcS1_ii

For me at least it is there in libGpad.6.so . Could you please search your libraries in a similar way ?

Last edited 10 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:9 Changed 10 years ago by cjones051073 (Chris Jones)

Does anything else fail ? What if instead of running the demo you just try starting a new TBrowser, e.g.

 new TBrowser();

at the ROOT prompt ?

Do you have anything custom in your ~/.rootrc file ? If so can you try moving that out the way.

Chris

comment:10 Changed 10 years ago by szhorvat (Szabolcs Horvát)

I do not have a .rootrc file. I am completely new to root.

new TBrowser(); does work. After evaluating this, .demo works too! However, if .demo is the first thing I run, it doesn't work. Transcript:

hawkeye:~ $ root6
   ----------------------------------------------------------------
  | Welcome to ROOT 6.00/00                    http://root.cern.ch |
  |                                   (c) 1995-2014, The ROOT Team |
  | Built for macosx64                                             |
  | From heads/master@v5-99-06-967-gdd4636e, Jun 18 2014, 00:22:00 |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'     |
   ----------------------------------------------------------------

root [0] new TBrowser();
root [1] .demo
root [2] .quit

This is the end of ROOT -- Goodbye

hawkeye:~ $ root6
   ----------------------------------------------------------------
  | Welcome to ROOT 6.00/00                    http://root.cern.ch |
  |                                   (c) 1995-2014, The ROOT Team |
  | Built for macosx64                                             |
  | From heads/master@v5-99-06-967-gdd4636e, Jun 18 2014, 00:22:00 |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'     |
   ----------------------------------------------------------------

root [0] .demo
IncrementalExecutor::runStaticInitializersOnce: symbol '_ZN11TControlBarC1EPKcS1_ii' unresolved while linking static initializer '_GLOBAL__I_a'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar14SetButtonWidthEj' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar4ShowEv' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN11TControlBar9AddButtonEPKcS1_S1_S1_' unresolved while linking function '_Z15__cling_Un1Qu32Pv'!
root [1] 

comment:11 Changed 10 years ago by mojca (Mojca Miklavec)

I do get the same results with nm as you do. Now, the best part is ... if I cd /opt/local/libexec/root6/lib/root, then .demo works. So it seems that some libraries might be linked without the path.

I don't have any .rootrc file and new TBrowser(); works as expected (else I wouldn't claim that ROOT worked on my machine).

I upgraded root6 in r121157.

comment:12 Changed 10 years ago by mojca (Mojca Miklavec)

Yes, running new TBrowser(); before the .demo works as well.

comment:13 Changed 10 years ago by cjones051073 (Chris Jones)

Mojca - I Just noticed you updated the git tag to fetch 6.00.01 in SVN, but didn't update the version

github.setup        root-mirror root 6-00-01 v
version             6.00.00

version should be updated to 6.00.01 as well really ?

also, perhaps to prevent mis-matches in future, replace with

version             6.00.01
github.setup        root-mirror root ${version} v

Chris

comment:14 Changed 10 years ago by cjones051073 (Chris Jones)

Just wondering, but do either of your have ROOTSYS set ? in theory a 'prefix' installation, which the MacPorts build is, should not require this, but I would not be surprised if there where bits or pieces in ROOT that still assume this... Could you try setting

export ROOTSYS=/opt/local/libexec/root6

?

Chris

comment:15 Changed 10 years ago by cjones051073 (Chris Jones)

Incase you are wondering, I am currently rebuilding my root6 port with 6.00.01, so cannot test without ROOTSYS until thats done, and that will be a short while on my 2008 MBPro ...

comment:16 Changed 10 years ago by szhorvat (Szabolcs Horvát)

There are some other weird things too.

The geometry button in the demo palette crashes. This happens in the CERN version too BTW.

The tornado demo doesn't work unless all the buttons are clicked in order (not sure if this is normal, I did run hsimple first per the instructions). It says:

root [2] hsimple   : Real Time =   0.88 seconds Cpu Time =   0.74 seconds
(class TFile *) 0x7f98c912a340
IncrementalExecutor::executeFunction: symbol '_ZN13TPolyMarker3D8SetPointEiddd' unresolved while linking function '_Z16__cling_Un1Qu323Pv'!
IncrementalExecutor::executeFunction: symbol '_ZN13TPolyMarker3DC1EisPKc' unresolved while linking function '_Z16__cling_Un1Qu323Pv'!

na49view also crashes, like geometry.

comment:17 Changed 10 years ago by cjones051073 (Chris Jones)

Well, all I can say is 'welcome to ROOT' .... ;)

its always been my experience that their example scripts and tutorials are a little flaky. I also know that there was a bit of an effort after 6.00.00 was released to improve them a bit, so perhaps 6.00.01 will be better.

Either way, this is increasingly looking like an upstream issue, perhaps made worse by the use of a 'prefix' installation (which the binary tar ball you can download from the ROOT site will not have used).

Someone should try and reproduce in a vanilla prefix build, outside of MacPorts, and then report that upstream....

Chris

comment:18 in reply to:  13 ; Changed 10 years ago by mojca (Mojca Miklavec)

Replying to jonesc@…:

Mojca - I Just noticed you updated the git tag to fetch 6.00.01 in SVN, but didn't update the version

Arghhhhhhh!!!

github.setup        root-mirror root 6-00-01 v
version             6.00.00

version should be updated to 6.00.01 as well really ?

also, perhaps to prevent mis-matches in future, replace with

version             6.00.01
github.setup        root-mirror root ${version} v

No, that won't work because git tag 6.00.01 doesn't exist.

We could do an auto-replace (dashes with dots), but then you'll do another checksum update and we'll end up with ROOT version 99315519fc3cb297c6a95a47c11ef3f9617d479c.

comment:19 in reply to:  18 Changed 10 years ago by cjones051073 (Chris Jones)

Replying to mojca@…:

Replying to jonesc@…:

Mojca - I Just noticed you updated the git tag to fetch 6.00.01 in SVN, but didn't update the version

Arghhhhhhh!!!

github.setup        root-mirror root 6-00-01 v
version             6.00.00

version should be updated to 6.00.01 as well really ?

also, perhaps to prevent mis-matches in future, replace with

version             6.00.01
github.setup        root-mirror root ${version} v

No, that won't work because git tag 6.00.01 doesn't exist.

We could do an auto-replace (dashes with dots), but then you'll do another checksum update and we'll end up with ROOT version 99315519fc3cb297c6a95a47c11ef3f9617d479c.

Ah yes, somehow I failed to notice the -/. difference...

comment:20 Changed 10 years ago by cjones051073 (Chris Jones)

I can reproduce the same thing. The issue is in fact nothing to do with ROOTSYS, but the fact I was starting a new TBrowser() by default each time I start root, from a script I start from my ~/.rootrc file.

I am pretty sure this is an upstream issue of some form...

Chris

comment:21 Changed 10 years ago by mojca (Mojca Miklavec)

Just to make it complete, here's what I get on 10.6 (YAY!!!):

root [1] new TBrowser();
root [2] .demo
/opt/local/libexec/root6/share/doc/root/tutorials/demos.C:10:12: error: redefinition of 'dirName'
   TString dirName = gSystem->UnixPathName(gInterpreter->GetCurrentMacroName());
           ^
/opt/local/libexec/root6/share/doc/root/tutorials/demos.C:10:12: note: previous definition is here
   TString dirName = gSystem->UnixPathName(gInterpreter->GetCurrentMacroName());
           ^
root [3] 

If I go to /opt/local/libexec/root6/lib then it works, but hsimple would crash with:

Warning in <TCanvas::Constructor>: Deleting canvas with same name: nut
you must run the script in a directory with write access
(class TFile *) 0x0

 *** Break *** segmentation violation



===========================================================
There was a crash.
This is the entire stack trace of all threads:
===========================================================

Thread 1 (process 51775):
#0  0x00007fff881d4b28 in wait4 ()
#1  0x00007fff881e90e6 in system ()
#2  0x000000010017415a in TUnixSystem::StackTrace ()
#3  0x0000000100177479 in TUnixSystem::DispatchSignals ()
#4  <signal handler called>
#5  0x0000000100c6bfa7 in ?? ()
#6  0x0000000100c6e348 in ?? ()
#7  0x0000000100c6e60f in ?? ()
#8  0x0000000100c6e38d in ?? ()
#9  0x00000001018d6ba6 in cling::IncrementalExecutor::executeFunction ()
#10 0x00000001018df77d in cling::Interpreter::RunFunction ()
#11 0x00000001018dec2c in cling::Interpreter::EvaluateInternal ()
#12 0x00000001018df196 in cling::Interpreter::echo ()
#13 0x0000000101925909 in cling::MetaSema::actOnxCommand ()
#14 0x000000010191e185 in cling::MetaParser::isXCommand ()
#15 0x000000010191d801 in cling::MetaParser::isCommand ()
#16 0x000000010191d60a in cling::MetaParser::isMetaCommand ()
#17 0x0000000101922d07 in cling::MetaProcessor::process ()
#18 0x0000000101826694 in TCling::ProcessLine ()
#19 0x000000010006c640 in TApplication::ExecuteFile ()
#20 0x000000010006b63c in TApplication::ProcessLine ()
#21 0x000000010c34a8b8 in TControlBarButton::Action ()
#22 0x000000010dbaa9fc in TRootControlBar::ProcessMessage ()
#23 0x000000010dae503f in TGMainFrame::HandleClientMessage ()
#24 0x000000010dae24cb in TGFrame::HandleEvent ()
#25 0x000000010dab2896 in TGClient::HandleEvent ()
#26 0x000000010dab274a in TGClient::ProcessOneEvent ()
#27 0x000000010dab135a in TGInputHandler::Notify ()
#28 0x0000000100170ccc in TUnixSystem::DispatchOneEvent ()
#29 0x00000001000c92ba in TSystem::InnerLoop ()
#30 0x00000001000c90fe in TSystem::Run ()
#31 0x000000010006c844 in TApplication::Run ()
#32 0x0000000100522d68 in TRint::Run ()
#33 0x0000000100002e1f in main ()
===========================================================


The lines below might hint at the cause of the crash.
If they do not help you then please submit a bug report at
http://root.cern.ch/bugs. Please post the ENTIRE stack trace
from above as an attachment in addition to anything else
that might help us fixing this issue.
===========================================================
#5  0x0000000100c6bfa7 in ?? ()
#6  0x0000000100c6e348 in ?? ()
#7  0x0000000100c6e60f in ?? ()
#8  0x0000000100c6e38d in ?? ()
#9  0x00000001018d6ba6 in cling::IncrementalExecutor::executeFunction ()
#10 0x00000001018df77d in cling::Interpreter::RunFunction ()
#11 0x00000001018dec2c in cling::Interpreter::EvaluateInternal ()
#12 0x00000001018df196 in cling::Interpreter::echo ()
#13 0x0000000101925909 in cling::MetaSema::actOnxCommand ()
#14 0x000000010191e185 in cling::MetaParser::isXCommand ()
#15 0x000000010191d801 in cling::MetaParser::isCommand ()
#16 0x000000010191d60a in cling::MetaParser::isMetaCommand ()
#17 0x0000000101922d07 in cling::MetaProcessor::process ()
===========================================================

hsum

Warning in <TCanvas::Constructor>: Deleting canvas with same name: c1
Warning in <TROOT::Append>: Replacing existing TH1: total (Potential memory leak).
Warning in <TROOT::Append>: Replacing existing TH1: main (Potential memory leak).
Warning in <TROOT::Append>: Replacing existing TH1: s1 (Potential memory leak).
Warning in <TROOT::Append>: Replacing existing TH1: s2 (Potential memory leak).
hsum      : Real Time =  38.47 seconds Cpu Time =   0.63 seconds

and lots of crashing with different demos.

These were example I meant with "port test", even though it's kind of difficult to test graphical examples.

comment:22 Changed 10 years ago by szhorvat (Szabolcs Horvát)

I noticed a root6 update today. .demo works now. I clicked through the buttons in the demo in order and it all worked until I got to "geometry", which caused root to lock up. But that is a different problem, I guess.

I think this bug can be closed now.

comment:23 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.