ROOT ignoring .rootrc on LXPLUS

I am trying to run ROOT on CERN LXPLUS. I have a ~/rootlogon.C file and a ~/.rootrc file. In the ~/.rootrc file is the following line:

Rint.Logon: /afs/cern.ch/user/y/yohay/rootlogon.C

I am a CMS member and therefore setup the needed ROOT environment variables from the central installations of CMSSW as in the following:

cd ~/scratch0/CMSSW_4_2_4_patch2/src
cmsenv
root

However, when I call “root” from any directory other than the home directory, the ~/rootlogon.C file is not executed as I would expect from the contents of my ~/.rootrc file. Furthermore, if I am in a directory that has its own rootlogon.C file, the local rootlogon.C file is run, despite the fact that ~/.rootrc supposedly points Rint.Logon to the ~/rootlogon.C. It’s as if ROOT ignores the fact that I have a ~/.rootrc file defined.

This only started happening within the last week or so, but I can’t exactly trace the problem back to a specific action that I took. Has anyone else experienced this problem, and if so, do you have any advice for me on how to get ROOT’s behavior back to normal?

Thanks,
Rachel Yohay

Hi Rachel,

do:

gEnv->Print()

to see which rootrc setting are taken.

Does the cmsenv create an alias for root? Try “alias root”?

After doing gEnv->Print(), I see a huge list of settings, among them these:

Rint.Load: rootalias.C [Global]
Rint.Logon: rootlogon.C [Global]
Rint.Logoff: rootlogoff.C [Global]
Rint.History: /afs/cern.ch/user/y/yohay/.root_hist [Global]

What does [Global] mean?

alias root gives no output.

Thanks,
Rachel