This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH 2/2] Add gdb_libdir/python-<version> in front of Python search path.
>>>>> "Doug" == Doug Evans <dje@google.com> writes:
Doug> I think(!) this is a better approach. Could be wrong of course. :-)
Doug> I think adding one directory to sys.path is insufficient, and from
Doug> what I've read it seems like Py_SetProgramName is the preferred
Doug> solution to this problem.
I read through this thread. I also prefer this approach, mostly because
it doesn't change sys.path for the distro case.
Doug> This patch doesn't currently handle your case, where the relationship
Doug> between the location of python and gdb at build time is different than
Doug> at runtime. I think the solution to that is another config parameter
Doug> to specify where to find python at run time. Currently, when given a
Doug> path, --with-python specifies where to find python at build time, and,
Doug> for now, also at runtime.
According to the docs you can also override some Py_ functions to allow
more complete control:
The embedding application can steer the search by calling
`Py_SetProgramName(FILE)' _before_ calling `Py_Initialize()'. Note
that `PYTHONHOME' still overrides this and `PYTHONPATH' is still
inserted in front of the standard path. An application that requires
total control has to provide its own implementation of `Py_GetPath()' ,
`Py_GetPrefix()' , `Py_GetExecPrefix()' , and `Py_GetProgramFullPath()' (all
defined in `Modules/getpath.c').
Tom