← Back to team overview

kicad-developers team mailing list archive

Re: Mac packaging update

 

Identified the issue.  The applications, when launched from KiCad.app,
use the embedded Python, but when launched standalone, use the system
Python.  I'll fix it.

On Fri, Apr 27, 2018 at 7:24 AM, Adam Wolf
<adamwolf@xxxxxxxxxxxxxxxxxxxx> wrote:
> You definitely cannot launch it from
> build/kicad/src/kicad-build/kicad/kicad.app.  There are a few things
> that have to happen to those files to make them work.
>
> I'll take a look at the second problem, but it won't be until tomorrow
> at the earliest.
>
> Thanks for helping test.
>
> Adam
>
> On Thu, Apr 26, 2018 at 10:49 PM, Shivpratap Chauhan <shivmsit@xxxxxxxxx> wrote:
>> Oh I got it. It crashes if I launch it from
>> build/kicad/src/kicad-build/kicad/kicad.app
>>
>> It does not crash if launch from build/kicad-dest/kicad.app
>>
>> I have been facing another issue from long time, pcbnew.app failed to
>> initialize python scripting.
>>
>> kicad's  error dialog pop up says:
>>
>> 09:08:34: ***** Error importing the wxPython API! *****
>> 09:08:34: pcbnewInitPythonScripting() failed.
>>
>> There seems to be issue with bundled python module search path, above
>> problem goes away if I
>> rename wx-3.0-osx_cocoa under
>> kicad.app/Contents/Frameworks/python/site-packages to wx-3.0-osx_cocoa.old
>>
>>
>> I found this same issue with
>> http://downloads.kicad-pcb.org/osx/testing/kicad-nightly-20180426-040756-3f5f591.dmg
>> this also.
>>
>> Any thought on this?
>>
>>
>> On Fri, Apr 27, 2018 at 8:34 AM, Adam Wolf <adamwolf@xxxxxxxxxxxxxxxxxxxx>
>> wrote:
>>>
>>> Does pcbnew launch from KiCad.app?
>>>
>>> I don't get this on my builds, and I haven't seen it on the ones from
>>> the KiCad build machine either.  Please try
>>>
>>> http://downloads.kicad-pcb.org/osx/testing/kicad-nightly-20180426-040756-3f5f591.dmg
>>> on your machine.
>>>
>>> Adam
>>>
>>> On Thu, Apr 26, 2018 at 10:00 PM, Shivpratap Chauhan <shivmsit@xxxxxxxxx>
>>> wrote:
>>> > Hi Adam,
>>> >
>>> > I built kicad on Mac OSX by using
>>> > https://github.com/wayneandlayne/kicad-mac-builder, build was success
>>> > but
>>> > pcbnew is crashing on every launch with
>>> > following stack trace at crash:
>>> >
>>> > (lldb) bt
>>> > * thread #1, queue = 'com.apple.main-thread', stop reason =
>>> > EXC_BAD_ACCESS
>>> > (code=1, address=0x118)
>>> >   * frame #0: 0x00007fff7d27eeb7
>>> > libc++.1.dylib`std::__1::basic_string<char,
>>> > std::__1::char_traits<char>, std::__1::allocator<char>
>>> >>::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>,
>>> > std::__1::allocator<char> > const&) + 27
>>> >     frame #1: 0x000000010fd6ad4d
>>> > libwx_baseu-3.0.0.4.0.dylib`wxAppConsoleBase::GetAppName() const + 29
>>> >     frame #2: 0x000000010fe167d2
>>> > libwx_baseu-3.0.0.4.0.dylib`wxStandardPathsBase::AppendAppInfo(wxString
>>> > const&) const + 178
>>> >     frame #3: 0x000000010fea0847
>>> > libwx_baseu-3.0.0.4.0.dylib`wxStandardPaths::GetUserDataDir() const + 71
>>> >     frame #4: 0x000000010e882111 _pcbnew.kiface`GetOSXKicadUserDataDir()
>>> > +
>>> > 33
>>> >     frame #5: 0x000000010e8e2b77
>>> > _pcbnew.kiface`SystemDirsAppend(SEARCH_STACK*) + 167
>>> >     frame #6: 0x000000010e8ce0a7
>>> > _pcbnew.kiface`KIFACE_I::start_common(int)
>>> > + 103
>>> >     frame #7: 0x000000010e0719cb
>>> > _pcbnew.kiface`PCB::IFACE::OnKifaceStart(PGM_BASE*, int) + 27
>>> >     frame #8: 0x0000000100089835 kicad`KIWAY::KiFACE(KIWAY::FACE_T,
>>> > bool) +
>>> > 437
>>> >     frame #9: 0x000000010008a452 kicad`KIWAY::Player(FRAME_T, bool,
>>> > wxTopLevelWindow*) + 322
>>> >     frame #10: 0x000000010001b530
>>> > kicad`KICAD_MANAGER_FRAME::RunPcbNew(wxString const&) + 48
>>> >     frame #11: 0x000000010001bc64
>>> > kicad`KICAD_MANAGER_FRAME::OnRunPcbNew(wxCommandEvent&) + 228
>>> >     frame #12: 0x000000010fec1d70
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEventHashTable::HandleEvent(wxEvent&,
>>> > wxEvtHandler*) + 240
>>> >     frame #13: 0x000000010fec341d
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEvtHandler::ProcessEventLocally(wxEvent&)
>>> > + 93
>>> >     frame #14: 0x000000010fec32a4
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEvtHandler::ProcessEvent(wxEvent&) + 100
>>> >     frame #15: 0x00000001000776a5
>>> > kicad`EDA_BASE_FRAME::ProcessEvent(wxEvent&) + 85
>>> >     frame #16: 0x000000010fec2e5e
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEvtHandler::ProcessPendingEvents() + 478
>>> >     frame #17: 0x000000010fd6c437
>>> > libwx_baseu-3.0.0.4.0.dylib`wxAppConsoleBase::ProcessPendingEvents() +
>>> > 215
>>> >     frame #18: 0x000000010fe8e792
>>> >
>>> > libwx_baseu-3.0.0.4.0.dylib`wxCFEventLoop::OSXCommonModeObserverCallBack(__CFRunLoopObserver*,
>>> > int, void*) + 66
>>> >     frame #19: 0x00007fff56ff0467
>>> >
>>> > CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__
>>> > + 23
>>> >     frame #20: 0x00007fff56ff038f CoreFoundation`__CFRunLoopDoObservers
>>> > +
>>> > 527
>>> >     frame #21: 0x00007fff56fd2908 CoreFoundation`__CFRunLoopRun + 1240
>>> >     frame #22: 0x00007fff56fd21a3 CoreFoundation`CFRunLoopRunSpecific +
>>> > 483
>>> >     frame #23: 0x00007fff562bad96 HIToolbox`RunCurrentEventLoopInMode +
>>> > 286
>>> >     frame #24: 0x00007fff562baa0f HIToolbox`ReceiveNextEventCommon + 366
>>> >     frame #25: 0x00007fff562ba884
>>> > HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 64
>>> >     frame #26: 0x00007fff5456da73 AppKit`_DPSNextEvent + 2085
>>> >     frame #27: 0x00007fff54d03e34 AppKit`-[NSApplication(NSEvent)
>>> > _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
>>> >     frame #28: 0x00007fff54562885 AppKit`-[NSApplication run] + 764
>>> >     frame #29: 0x000000010f7f759f
>>> > libwx_osx_cocoau_core-3.0.0.4.0.dylib`wxGUIEventLoop::OSXDoRun() + 207
>>> >     frame #30: 0x000000010fe8f0f1
>>> > libwx_baseu-3.0.0.4.0.dylib`wxCFEventLoop::DoRun() + 49
>>> >     frame #31: 0x000000010fdb1dc2
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEventLoopBase::Run() + 162
>>> >     frame #32: 0x000000010fd6b693
>>> > libwx_baseu-3.0.0.4.0.dylib`wxAppConsoleBase::MainLoop() + 99
>>> >     frame #33: 0x000000010f78a75a
>>> > libwx_osx_cocoau_core-3.0.0.4.0.dylib`wxApp::OnRun() + 26
>>> >     frame #34: 0x00000001000174b9 kicad`APP_KICAD::OnRun() + 25
>>> >     frame #35: 0x000000010fdf8c8a
>>> > libwx_baseu-3.0.0.4.0.dylib`wxEntry(int&,
>>> > wchar_t**) + 138
>>> >     frame #36: 0x0000000100016b70 kicad`main + 48
>>> >     frame #37: 0x00007fff7f2ec015 libdyld.dylib`start + 1
>>> >
>>> >
>>> > Any one else getting this crash?
>>> >
>>> > -Shiv
>>> >
>>> >
>>> > On Thu, Apr 26, 2018 at 9:47 PM, Adam Wolf
>>> > <adamwolf@xxxxxxxxxxxxxxxxxxxx>
>>> > wrote:
>>> >>
>>> >> I fixed the build breaker yesterday, so the ones marked April 26
>>> >> (http://downloads.kicad-pcb.org/osx/testing/) show the new embedded
>>> >> Python.  (I pulled the KiCad patch into the packaging source tree for
>>> >> testing.)
>>> >>
>>> >> Adam Wolf
>>> >>
>>> >> On Mon, Apr 23, 2018 at 1:24 PM, Nick Østergaard <oe.nick@xxxxxxxxx>
>>> >> wrote:
>>> >> > It is built nightly as mentioned in earlier threads at
>>> >> > http://downloads.kicad-pcb.org/osx/testing/. It builds nightly, but
>>> >> > it
>>> >> > seems
>>> >> > the latest change broke the build for me. :/
>>> >> >
>>> >> > So users are already able to test it. I have not applied the BU
>>> >> > patch.
>>> >> >
>>> >> > 2018-04-23 20:23 GMT+02:00 Adam Wolf <adamwolf@xxxxxxxxxxxxxxxxxxxx>:
>>> >> >>
>>> >> >> Soon.  Today?  I'll see if I can set up the scripts to apply the
>>> >> >> attached
>>> >> >> patch.
>>> >> >>
>>> >> >> I rebuilt from a clean setup using all the old infrastructure, and I
>>> >> >> do not see any new issues, and the output DMGs appear to be the
>>> >> >> same.
>>> >> >> Let me know if there are any objections to this change.
>>> >> >>
>>> >> >> Adam
>>> >> >>
>>> >> >> On Mon, Apr 23, 2018 at 1:11 PM, Wayne Stambaugh
>>> >> >> <stambaughw@xxxxxxxxx>
>>> >> >> wrote:
>>> >> >> > Hi Adam,
>>> >> >> >
>>> >> >> > When do you think you will be able to begin providing nightly
>>> >> >> > builds
>>> >> >> > with this so users can test it?  It would be nice to have a few
>>> >> >> > weeks
>>> >> >> > of
>>> >> >> > testing with Python bundled on macos to shake out any bugs before
>>> >> >> > the
>>> >> >> > stable release.
>>> >> >> >
>>> >> >> > Thanks,
>>> >> >> >
>>> >> >> > Wayne
>>> >> >> >
>>> >> >> > On 4/23/2018 10:46 AM, Adam Wolf wrote:
>>> >> >> >> Hi folks!
>>> >> >> >>
>>> >> >> >> Over the weekend, I made a culminating breakthrough on some
>>> >> >> >> Python
>>> >> >> >> work I've been working on since at least March 2017
>>> >> >> >> (https://cmake.org/pipermail/cmake/2017-March/065140.html).  I
>>> >> >> >> now
>>> >> >> >> have a Python Framework embedded inside KiCad, scripting console
>>> >> >> >> and
>>> >> >> >> all, which fixes many issues we've had for years.  For instance,
>>> >> >> >> I
>>> >> >> >> can
>>> >> >> >> no longer reproduce the longstanding "Mac KiCad stops working if
>>> >> >> >> you
>>> >> >> >> have wxmac or wxpython installed".  !!!
>>> >> >> >>
>>> >> >> >> My changes require *one* change inside KiCad, setting
>>> >> >> >> BU_COPY_FULL_FRAMEWORK_CONTENTS to ON (see
>>> >> >> >> https://cmake.org/cmake/help/v3.0/module/BundleUtilities.html) so
>>> >> >> >> that
>>> >> >> >> it copies the complied full custom Python Framework into the
>>> >> >> >> bundle.
>>> >> >> >>
>>> >> >> >> I am going to prepare a patch, and see if the last-generation
>>> >> >> >> packaging scripts still work.  I expect they should--I don't
>>> >> >> >> actually
>>> >> >> >> suspect any change for anyone else, because the Python framework
>>> >> >> >> is
>>> >> >> >> usually a system framework, and those are filtered out by
>>> >> >> >> BundleUtilities.  Doing a clean build from the old scripts to
>>> >> >> >> test
>>> >> >> >> it
>>> >> >> >> will take a good chunk of today.  (I am not 100% sure it won't
>>> >> >> >> cause
>>> >> >> >> problems for other folks, so I am prepared to set this behind a
>>> >> >> >> CMake
>>> >> >> >> flag so people can turn it off.)
>>> >> >> >>
>>> >> >> >> That'll take me a day, and I know we're running into a deadline,
>>> >> >> >> so
>>> >> >> >> I
>>> >> >> >> just wanted to pipeline any necessary discussion :)
>>> >> >> >>
>>> >> >> >> Adam Wolf
>>> >> >> >>
>>> >> >> >> _______________________________________________
>>> >> >> >> 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
>>> >> >>
>>> >> >> _______________________________________________
>>> >> >> 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
>>> >
>>> >
>>
>>


Follow ups

References