← Back to team overview

kicad-developers team mailing list archive

Re: A few run-time problems on kicad-git build on Slackware64-current Linux

 

Tom, did you create a new build dir when switching from gtk2 to gtk3?

On Sat, 7 Nov 2020 at 16:32, Mark Roszko <mark.roszko@xxxxxxxxx> wrote:

> The change wouldn't be in KiCad. It's the behavior of your window manager.
> Apparently some Linux WMs send mouse events to windows and controls without
> focus and others don't. KiCad traditionally assumed it wouldn't receive
> mouse events without being activated.
>
> On Fri, Nov 6, 2020 at 11:33 PM Tom Crane <TPCkicad@xxxxxxxxxxxxxxxxxxx>
> wrote:
>
>> Thanks for the explanation.  I noticed these problems on moving from
>> gtk2 to gtk3 builds.  Is this where these changes were made?
>>
>> Are there likely to be any user selectable runtime options added to Kicad
>> to ameliorate these problems?
>>
>> Tom Crane.
>>
>> On Thu, 5 Nov 2020, Mark Roszko wrote:
>>
>> > Your issues in (1) are by design.
>> >
>> > Whether that design is correct or not is another story.
>> >
>> > I actually removed that behavior on Windows because Microsoft has a
>> stable api to determine top level window for focus.
>> > Linux does not and GDK used to be but with the fragmented x11/wayland
>> mess, they removed the api call support to determine top level window.
>> >
>> > And removing the focus calls instead are going to lead a rabbit hole of
>> things not working like hotkeys.
>> >
>> > On Thu, Nov 5, 2020 at 9:14 PM Tom Crane <TPCkicad@xxxxxxxxxxxxxxxxxxx>
>> wrote:
>> >       On Thu, 5 Nov 2020, Nick Østergaard wrote:
>> >
>> >       Thanks again for the quick follow-up.
>> >
>> >       > Did you install wxpython (phoenix) with pip?
>> >       No.
>> >
>> >       > you have some python stuff in ~/.local.
>> >
>> >       I have uploaded the modified SlackBuild scripts I used to build
>> both the
>> >       Slackware wxGTK3 package (wxWidgets/Phoenix) and the wxPython4
>> package at
>> >       https://www.mklab.rhul.ac.uk/~tom/kicad/SlackBuild/ in case the
>> problem
>> >       lies with either.
>> >
>> >       >
>> >       > Maybe just try to clear that out completely, or explicitly
>> set PYTHONPATH to the site-packages path of your install location?
>> >
>> >       Just tried removing ~/.local and then,
>> >
>> >       export PYTHONPATH=/usr/lib64/python3.8/site-packages/
>> >
>> >       In both cases the scripting console error remains the same.
>> >
>> >       Thanks
>> >       Tom.
>> >
>> >
>> >       >
>> >       > On Thu, 5 Nov 2020 at 20:51, Tom Crane <
>> TPCkicad@xxxxxxxxxxxxxxxxxxx> wrote:
>> >       >       Thanks for the quick response.  In the past I have been
>> bitten by old
>> >       >       libraries in non-standard places derailing other
>> application builds but
>> >       >       can't see anything obviously amiss here.
>> >       >
>> >       >       My $LD_LIBRARY_PATH EV is empty.  I checked where
>> ldconfig looks and could
>> >       >       not see anything incriminating outside the standard
>> install locations for
>> >       >       Slackware distros (/usr/lib64 & /lib64).  See
>> >       >       https://www.mklab.rhul.ac.uk/~tom/kicad/ldconfig-p.txt
>> for the O/P of
>> >       >       'ldconfig -p'.
>> >       >
>> >       >       I also tried stracing open* calls in pcbnew.  See
>> >       >
>> https://www.mklab.rhul.ac.uk/~tom/kicad/strace-pcbnew2.lis.  Again
>> nothing
>> >       >       jumped out as problematic.  All calls to Python related
>> files seem to
>> >       >       reference python v.3.8 ones as expected.
>> >       >
>> >       >       The build scripts I am using are release version
>> 'SlackBuild' scripts I've
>> >       >       hacked to use the git development code.  See
>> >       >       https://www.mklab.rhul.ac.uk/~tom/kicad/SlackBuild/.
>> The tom_build.sh
>> >       >       script calls the main build script kicad-git.SlackBuild.
>> >       >
>> >       >       Thanks
>> >       >       Tom
>> >       >
>> >       >       On Thu, 5 Nov 2020, Nick Østergaard wrote:
>> >       >
>> >       >       > Are you using a build script? If so please link it.
>> >       >       > Also check if you partially installed in multiple
>> locations, sucha as where ldconfig looks and echo LD_LIBRARY_PATH from your
>> runtime env.
>> >       >       >
>> >       >       > Nicl
>> >       >       >
>> >       >       > tor. 5. nov. 2020 16.26 skrev Tom Crane <
>> TPCkicad@xxxxxxxxxxxxxxxxxxx>:
>> >       >       >       I have been using recent builds for the past few
>> weeks.  They are usable
>> >       >       >       but I have a couple of outstanding problems which
>> I'm not sure how to
>> >       >       >       diagnose/fix.
>> >       >       >
>> >       >       >       (1) I have strange behaviours with open Kicad
>> application windows. For
>> >       >       >       example I have a Kicad project, eeschema and
>> pcbnew windows open on a
>> >       >       >       single display. If I let the mouse pointer move
>> from the project window to
>> >       >       >       the eeschema or pcbnew window then input focus
>> immediately transfers to
>> >       >       >       the eeschema or pcbnew window.  This is without
>> touching any mouse
>> >       >       >       buttons.
>> >       >       >
>> >       >       >       Similarly moving the mouse pointer back to the
>> project window has no
>> >       >       >       effect (as it should) but moving it between the
>> eeschema and pcbnew
>> >       >       >       windows transfers input focus as soon as it
>> enters the other window.
>> >       >       >
>> >       >       >       There is a similar effect when moving between
>> unrelated (eg. an xterm)
>> >       >       >       windows and either eeschema or pcbnew.  Here the
>> eeschema or pcbnew window
>> >       >       >       does not receive input focus (which remains with
>> the xterm as it should)
>> >       >       >       but the eeschema or pcbnew window does move up
>> the window 'stack'.  eg. if
>> >       >       >       I have an eeschema windows partially covered by a
>> pcbnew window, partially
>> >       >       >       covered by an xterm window which has input focus,
>> then moving the mouse
>> >       >       >       pointer from the xterm to an uncovered section of
>> the eeschema window will
>> >       >       >       cause it to move up the stack and fully cover the
>> pcbnew window.
>> >       >       >
>> >       >       >       I get this behaviour with both accelerated and
>> standard graphics set.
>> >       >       >
>> >       >       >       The above behaviours were observed with the KDE
>> desktop.  I get similar
>> >       >       >       behaviour with my usual window manager (fvwm95)
>> except that the window
>> >       >       >       focus never switches.
>> >       >       >
>> >       >       >       I also find that when invoking the DRC check that
>> the DRC Control Window
>> >       >       >       disappears immediately after popping-up and has
>> to be 're-acquired' by
>> >       >       >       clicking the pcbnew tab on the fvwm95 taskbar.  I
>> suspect this is another
>> >       >       >       facet of these window problems.
>> >       >       >
>> >       >       >       I don't get this behaviour with any other
>> applications but Kicad is the
>> >       >       >       only wxWidgets/wxPython based one I currently use
>> and so the problem could
>> >       >       >       there at the library level rather than within
>> Kicad on my
>> >       >       >       distro/Kicad+dependencies build.
>> >       >       >
>> >       >       >       None of this is a show-stopper but it is
>> irritating.
>> >       >       >
>> >       >       >       Any ideas?
>> >       >       >
>> >       >       >
>> >       >       >       (2) I am unable to use any Kicad scripts.
>> Clicking on pcbnew --> Tools
>> >       >       >       --> scripting console I get the "Error: unable to
>> create Python Console"
>> >       >       >       pop-up and the following on the console,
>> >       >       >
>> >       >       >         Traceback (most recent call last):
>> >       >       >          File "<string>", line 1, in <module>
>> >       >       >          File
>> "/usr/share/kicad/scripting/kicad_pyshell/__init__.py", line 17, in
>> >       >       >       <module>
>> >       >       >            import wx
>> >       >       >          File
>> "/usr/lib64/python3.8/site-packages/wx/__init__.py", line 12, in
>> >       >       >       <module>
>> >       >       >            __version__ = wx.__version__.VERSION_STRING
>> >       >       >       AttributeError: partially initialized module 'wx'
>> has no attribute
>> >       >       >       '__version__' (most likely due to a circular
>> import)
>> >       >       >
>> >       >       >
>> >       >       >       I built kicad with Python3 support (see below) so
>> it should be using that
>> >       >       >       and not Python2 (for which I don't have a
>> wxWidgets build) but I suspect
>> >       >       >       it might still be calling Python2.
>> >       >       >
>> >       >       >       Any ideas?
>> >       >       >
>> >       >       >       Many thanks
>> >       >       >       Tom Crane
>> >       >       >
>> >       >       >       Build details:
>> >       >       >
>> >       >       >       Application: KiCad
>> >       >       >       Version: (5.99.0-6755-g3b10d1583), release build
>> >       >       >       Libraries:
>> >       >       >            wxWidgets 3.1.4
>> >       >       >            libcurl/7.70.0 OpenSSL/1.1.1h zlib/1.2.11
>> brotli/1.0.9 libidn2/2.3.0
>> >       >       >       libpsl/0.21.1 (+libidn2/2.3.0) libssh2/1.9.0
>> nghttp2/1.41.0
>> >       >       >       Platform: Linux 5.4.6-mklab x86_64, 64 bit,
>> Little endian, wxGTK, ,
>> >       >       >       Build Info:
>> >       >       >            Date: Nov 2 2020 16:07:07
>> >       >       >            wxWidgets: 3.1.4 (wchar_t,wx containers)
>> GTK+ 3.24
>> >       >       >            Boost: 1.74.0
>> >       >       >            OCE: 6.9.1
>> >       >       >            Curl: 7.72.0
>> >       >       >            ngspice: 30
>> >       >       >            Compiler: GCC 9.3.0 with C++ ABI 1013
>> >       >       >       Build settings:
>> >       >       >            KICAD_SCRIPTING=ON
>> >       >       >            KICAD_SCRIPTING_MODULES=ON
>> >       >       >            KICAD_SCRIPTING_PYTHON3=ON
>> >       >       >            KICAD_SCRIPTING_WXPYTHON=ON
>> >       >       >            KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
>> >       >       >            KICAD_SCRIPTING_ACTION_MENU=ON
>> >       >       >            KICAD_USE_OCE=ON
>> >       >       >            KICAD_SPICE=ON
>> >       >       >
>> >       >       >       _______________________________________________
>> >       >       >       Mailing list:
>> https://launchpad.net/~kicad-developers
>> >       >       >       Post to     :
>> kicad-developers@xxxxxxxxxxxxxxxxxxx
>> >       >       >       Unsubscribe :
>> https://launchpad.net/~kicad-developers
>> >       >       >       More help   : https://help.launchpad.net/ListHelp
>> >       >       >
>> >       >       >
>> >       >       >
>> >       >
>> >       >
>> >       >_______________________________________________
>> >       Mailing list: https://launchpad.net/~kicad-developers
>> >       Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> >       Unsubscribe : https://launchpad.net/~kicad-developers
>> >       More help   : https://help.launchpad.net/ListHelp
>> >
>> >
>> >
>> > --
>> > Mark
>> >
>> >
>
>
>
> --
> Mark
>

Follow ups

References