Joel Brobecker - [RFA] ignore PYTHONHOME environment variable. (original) (raw)

This is the mail archive of the gdb-patches@sourceware.orgmailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

This is something I hinted during one of our discussion at this year's GCC Summit.

If PYTHONHOME is defined in the environment, then Py_SetProgramName does not use the program-name location to find the python library. Instead, it follows the PYTHONHOME, which can cause problems if it points to a different Python installation, particularly if that installation is from a different version of Python.

gdb/ChangeLog:

    * python/python.c (_initialize_python): Call Py_SetPythonHome
    if GDB was configured with --with-python.

Tested on x86_64-linux. Ok to commit?


gdb/python/python.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/gdb/python/python.c b/gdb/python/python.c index d009be9..4f6f679 100644 --- a/gdb/python/python.c +++ b/gdb/python/python.c @@ -955,6 +955,12 @@ Enables or disables printing of Python stack traces."), Py_Initialize (); PyEval_InitThreads (); +#ifdef WITH_PYTHON_PATH + /* We override any value that the PYTHONHOME might have, as we want + to make sure that we use the Python library that comes with GDB. / + Py_SetPythonHome (ldirname (python_libdir)); +#endif + gdb_module = Py_InitModule ("gdb", GdbMethods); / The casts to (char*) are for python 2.4. */

1.7.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]