WX_OVERLAY is still on.
It is getting late and I’m a little weary after a day in the garden. I’ll have another go tomorrow maybe.
Grateful if anyone can point me in the right direction before I end up down a rat hole.
I wonder if there is a reason to build a newer version of KiCad if you want to stick to the legacy canvas. I am pondering how many new features have been introduced to the legacy canvas between 5.0.2 and 5.1, but it is rather a low number.
Primary reason is bug fixes and because I can (with some guidance)
I’m not really chasing new features as 5.0.2 does what I need and suits the simplistic way I work. Rendering is my main issue I have with the new canvas along with the way a “change of layer” (and subsequent via placement) is implemented.
The transparency feature may help me here but I’m yet to experiment with it; I am a little “time poor” at the moment.
What do you get if you run /usr/bin/wx-config --toolkit=gtk2 --libs
You should get list of compile flags with gtk2 libs, something like -L/usr/lib/x86_64-linux-gnu -pthread -lwx_gtk2u_xrc-3.0 -lwx_gtk2u_html-3.0 -lwx_gtk2u_qa-3.0 -lwx_gtk2u_adv-3.0 -lwx_gtk2u_core-3.0 -lwx_baseu_xml-3.0 -lwx_baseu_net-3.0 -lwx_baseu-3.0
Try forcing gtk2 build by passing this to cmake -DwxWidgets_CONFIG_OPTIONS="--toolkit=gtk2"
Clean your build directory beforehand.
Thanks mate. I get exactly what you get.
I have a few errands to run today so will try your cmake option when I get back and let you know how I go.
Thanks for your assistance and persistence.
I’ve compiled with no errors and I now have:
Application: kicad
Version: 5.1.0, release build
Libraries:
wxWidgets 3.0.4
libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Platform: Linux 4.15.0-46-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
Boost: 1.65.1
OpenCASCADE Community Edition: 6.9.1
Curl: 7.58.0
Compiler: GCC 7.3.0 with C++ ABI 1011
I’m still having problems though. Couple of disclaimers first.
I’ve done this twice using GTK3 and GTK2. I haven’t run “make install” in either case as I want to retain the version I have, so I’m running in a terminal from the build directory.
I found the kicad executable in ./build/release/kicad so I cd’ed into there and ran it. I got the version information above from the start window. Good start I thought.
When I ran eeschema, it complained about not finding “_eeschema.kiface” which I found in ./build/release/eeschema so I copied it to the kicad directory. Schematic now runs.
A similar thing happened when I ran pcbnew so copied the _pcbnew.kiface file from ./build/release/pcbnew to the kicad directory.
When I now run pcbnew, I get the following (in the terminal I’m running kicad from):
Traceback (most recent call last):
File "<string>", line 3, in <module>
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 3924, in <module>
class CSegment(_object):
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 3932, in CSegment
__swig_setmethods__["m_Start"] = _pcbnew.CSegment_m_Start_set
AttributeError: 'module' object has no attribute 'CSegment_m_Start_set'
Segmentation fault (core dumped)
Kicad then exits.
I didn’t get this the first time I compiled using GTK3. Obviously something to do with GTK2 but I’ve got nothing. Wrong python version??
Try compiling with -DKICAD_SCRIPTING_WXPYTHON=OFF and -DKICAD_SCRIPTING_ACTION_MENU=OFF
Also there should be a flag to override installation directory. In fact default very well might be /usr/local/bin instead of /usr/bin that .deb packages install to. So you might not overwrite default installation if you run make install but check it beforehand.
Well do you get legacy canvas in pcbnew?
If the traceback in the console is your only concern it likely has to do with the fact that you didn’t actually install the compiled package so kicad picks up pcbnew.py from system dist-packages directory which is still from the old installation. You can try to fiddle with PYTHONPATH environment variable to point your compiled kicad to right directory containing correct pcbnew.py or you can just ignore this.
I do get the legacy canvas
I work in an industry where warnings are not good so was trying to eliminate it.
If I can just ignore this then I’m happy to take your advice.
Just for fun, I might build a VM of Xubuntu 18.04 and do a “make install” and see what happens.
Thank you for your assistance and patience in getting me to this point.