← Back to team overview

kicad-developers team mailing list archive

Re: Fwd: pcbnew crashes on start since #4757 because of libpython not loaded

 

On 04/04/2014 01:02 AM, Jean-Samuel Reynaud wrote:
> === modified file 'common/single_top.cpp'
> --- common/single_top.cpp	2014-03-21 16:59:19 +0000
> +++ common/single_top.cpp	2014-03-28 22:01:08 +0000
> @@ -221,6 +221,8 @@
>  {
>      bool OnInit()           // overload wxApp virtual
>      {
> +        void* handle = dlopen("libpython2.7.so", RTLD_LAZY | RTLD_GLOBAL);
> +        // boost wrapper for python call
>          return Pgm().OnPgmInit( this );
>      }
>  
> 
> 


I'm sure you are not submitting this for a potential commit, right?

Because:

1) The comment is below the line of text that it refers to.

2) The comment is bullshit, boost is not part of the discussion.  The comment should read
something like, "I don't know why this works, but is solves bug number ???.  It's temporary."

3) You are adding python to 7 programs, only one of which is uses python.

4) You are adding python to all operating systems, with no evidence that the problem
extends beyond linux.

5) You are adding python to all build, even if python is not used at all, like my builds.



It's basically stupid, without explanation, and no effort was to understand the problem.
Its like taking medicine from your Grandmother's medicine cabinet without knowing what it
does.  It might have embarrassing consequences.

I don't think it should be committed.  I had no idea that wxPython scripting was already
so important and widely used.

I think somebody needs to prepare a debugging version of python and single step into the
DSO, the call stack at the point of crash passes through wxPyBeginBlockThreads(), and that
is the first thing in the libpython.so that is called when called from _pcbnew.kiface.
That's what I intend to do, when I get to it.








Follow ups

References