AddIncludePath() in Python seems to process command line arguments

ROOT Version: 6.20/04
Platform: Linux Debian 10
Compiler: GCC 8.3.0-6 (?)

In Python 3 scripts, a call to ROOT.gInterpreter.AddIncludePath() seems to process sys.argv.

This can have unexpected behaviors. A small script reproduces the problem:

import argparse
import ROOT



run with

python3 <test-script> -h

The ROOT usage text appears.

Is this exprected behavior? Is there some alternative way to add include paths in Python that won’t scan sys.argv?


Can you try this with 6.22/06? 6.22 comes with a new PyROOT which, by default, does not parse the command line arguments anymore.

Thanks you for your reply. Yes, we’ll try it. We’re having trouble building 6.22/06.

Ok, let us know if we can help you with that too.

There’s updated information on how to build ROOT from sources here:

Alternatively, if that’s an option for you, there are easier installation solutions like conda:

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