Warning after importing ROOT in Python

I’ve been trying to use PyROOT in Windows 10, but when I import ROOT in the Python prompt via import ROOT I get the following warning:

Warning in <TClassTable::Add>: class ROOT::Detail::TTypedIter<class TEnumConstant> already in TClassTable

I’m not exactly sure what this means, but after trying to make a simple graphic from the PyROOT tutorial by putting f = ROOT.TF1("f1", "sin(x)/x", 0., 10.) into the prompt, it gives me a long line of additional errors:

Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Error in <TClass::LoadClassInfo>: no interpreter information for class PyROOT::TPyROOTApplication is available even though it has a TClass initialization routine.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\root_v6.22.06\bin\ROOT.py", line 625, in __getattr1
    self.__finalSetup()
  File "C:\root_v6.22.06\bin\ROOT.py", line 703, in __finalSetup
    if (not _builtin_cppyy and appc.CreatePyROOTApplication()) or _builtin_cppyy:
AttributeError: type object 'TPyROOTApplication' has no attribute 'CreatePyROOTApplication'

I have Python 3.8.7 32-bit installed (3.9 or the 64-bit versions don’t seem to work with PyROOT at all). I looked around on the forums and it looks like apparently PyROOT is not supposed to work with Windows 10, but other posts seem to imply that it does. Is this some error with Windows or with PyROOT? I’m pretty new to ROOT and I’ve never used Linux before, but maybe I don’t have any choice but to use WSL. Would like to use Windows if at all possible (I won’t be using ROOT itself much anyway, but I do need PyROOT to work).

ROOT Version: 6.22.06
Platform: Windows 10
Compiler: Unsure

@bellenot Is this something you can help with?

I can reproduce the error. It might be due to a different version of Python. I’ll check and let you know.

So it’s understood: ROOT is currently build with the legacy version of PyROOT. So you can either download the master nightly build, build ROOT (master) from source or wait for the next release (6.24/00) which should be build with the new PyROOT

Thank you! Do you know if the new 6.24/00 release will work with Python 3.9? I tried 3.9 but I got some errors that only moving to 3.8 resolved.

Well, maybe, I can’t tell right now…

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.