← Back to team overview

kicad-developers team mailing list archive

Re: Critical path item / request for help

 

vcpkg has a python3 build ...... in fact, people actually complain vcpkg
wants to use its own python copy as a dependency for other libraries like
boost-python instead of system python (lol)

On Tue, Jul 7, 2020 at 2:42 PM Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:

> This could be the straw that breaks the msvc camel's back.  If we are
> tied to the installed Python on windows, the amount of effort required
> to package KiCad on windows increases significantly.  Shipping KiCad
> without Python on windows is not acceptable.
>
> On 7/7/20 2:36 PM, Jon Evans wrote:
> > I am not sure there is much history of vcpkg and Python working
> > together, so this might be breaking new ground.  It is nominally a
> > package manager for C++ libraries, after all.
> >
> > On Tue, Jul 7, 2020 at 12:51 PM Wayne Stambaugh <stambaughw@xxxxxxxxx>
> wrote:
> >>
> >> The wxPython Phoenix build system is ugly.  Before the Phoenix work, it
> >> used to respect the Python distutils configuration.  Now it just steps
> >> all over the Python distutils settings on windows and assumes that the
> >> only build platform used on windows is msvc.
> >>
> >> I have experience using Python distutils to build Python libraries so I
> >> can help with this although it's been a while so I'm a bit rusty.  I've
> >> never been a big fan of distutils.  It always seemed like a solution in
> >> search of a problem to me.  There are so many config/build tools that do
> >> the same thing far less painfully.
> >>
> >> One problem I see is that Python distutils is very much tied to the
> >> current Python version installed.  I don't know how vcpkg handles
> >> Python.  Do they use the installed Python or is it packaged as a stand
> >> alone port inside vcpkg?  If they use the installed Python, this
> >> significantly complicates things as we will have to provide a build for
> >> every supported version of Python that could be installed on someones
> >> system.  There is a big advantage with the current way we handle Python
> >> on windows.
> >>
> >> On 7/7/20 8:59 AM, Jon Evans wrote:
> >>> Yes, wxWidgets I can now use straight from vcpkg.
> >>>
> >>> I took a look at wxPython phoenix and the build system is...something
> else.
> >>> Is anyone more experienced with Python build systems?
> >>> It seems like the happy path for vcpkg is for projects that use cmake.
> >>> This hybrid of Python and C++ with custom build system in Python looks
> >>> like a headache to integrate.
> >>>
> >>> I have not looked at SWIG yet.  OCC it seems like is in progress (we
> >>> are less worried about that one)
> >>>
> >>> -Jon
> >>>
> >>> On Tue, Jul 7, 2020 at 7:31 AM Mark Roszko <mark.roszko@xxxxxxxxx>
> wrote:
> >>>>
> >>>> Nope, I'm building straight out of vcpkg now.
> >>>> Jon Evans posted the patches to kicad's findwxwidgets back in
> November fyi.
> >>>>
> >>>> On Tue, Jul 7, 2020 at 5:39 AM Nick Østergaard <oe.nick@xxxxxxxxx>
> wrote:
> >>>>>
> >>>>> Hi Mark
> >>>>>
> >>>>> I still need to patch FindwxWidgets.cmake, using this version:
> >>>>> https://gist.github.com/nickoe/d3c224a2587eff8ea959bc383a993520
> >>>>>
> >>>>> See there two vcpkg issues:
> >>>>> https://github.com/microsoft/vcpkg/issues/1843
> >>>>> https://github.com/microsoft/vcpkg/issues/4756
> >>>>>
> >>>>> I thought you were using a selfbuilt version of wxwidgets. Have you
> >>>>> started to use it directly from vcpkg?
> >>>>>
> >>>>> I use:
> >>>>>
> >>>>> cmake ^
> >>>>>
>  -DCMAKE_TOOLCHAIN_FILE=%WORKSPACE%\vcpkg\scripts\buildsystems\vcpkg.cmake ^
> >>>>>     -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%\install
> >>>>> -DCMAKE_PDB_OUTPUT_DIRECTORY:PATH=%WORKSPACE%\_pdb ^
> >>>>>     -DCMAKE_RUNTIME_OUTPUT_DIRECTORY:PATH=%WORKSPACE%\_bin ^
> >>>>>     -DKICAD_SPICE=OFF ^
> >>>>>     -DKICAD_USE_OCE=OFF ^
> >>>>>     -DKICAD_SCRIPTING=OFF ^
> >>>>>     -DKICAD_SCRIPTING_MODULES=OFF ^
> >>>>>     -DKICAD_SCRIPTING_WXPYTHON=OFF ^
> >>>>>     ..\src
> >>>>>
> >>>>> cmake --build . --config %build% --target install -- /M
> >>>>>
> >>>>> Recently I started to get this error at install time:
> >>>>>
> >>>>> 23:48:21 -- Found OpenGL: opengl32
> >>>>> 23:48:21 CMake Error at C:/Program
> >>>>>
> Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164
> >>>>> (message):
> >>>>> 23:48:21   Could NOT find GLEW (missing: GLEW_INCLUDE_DIR
> GLEW_LIBRARY)
> >>>>> 23:48:21 Call Stack (most recent call first):
> >>>>> 23:48:21   C:/Program
> >>>>>
> Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:445
> >>>>> (_FPHSA_FAILURE_MESSAGE)
> >>>>> 23:48:21   CMakeModules/FindGLEW.cmake:38
> (find_package_handle_standard_args)
> >>>>> 23:48:21
>  C:/Jenkins/workspace/windows-kicad-msvc-vcpkg/build/release/cpu/x86/label/msvc/vcpkg/scripts/buildsystems/vcpkg.cmake:405
> >>>>> (_find_package)
> >>>>> 23:48:21   CMakeLists.txt:586 (find_package)
> >>>>>
> >>>>> On Tue, 7 Jul 2020 at 01:49, Mark Roszko <mark.roszko@xxxxxxxxx>
> wrote:
> >>>>>>
> >>>>>> 1. cmake scripts already work with wxwidgets, that was already done
> awhile back. I've been building with MSVC for awhile
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> One dependency that'll need "porting" is ngspice.
> >>>>>> But let me put this out there, does it make sense to leave ngspice
> to a higher level distro and not built as part of kicad?
> >>>>>> We've already had cases of repackaging Windows and macOS just to
> bump ngspice versions up.
> >>>>>> Why not make it standard baseline as part of kicad instead of
> allowing versions to be mixed?
> >>>>>>
> >>>>>>
> >>>>>> On Mon, Jul 6, 2020 at 3:04 PM Nick Østergaard <oe.nick@xxxxxxxxx>
> wrote:
> >>>>>>>
> >>>>>>> Just a FYI, we have not really solved wxpython phoenix for macos
> yet,
> >>>>>>> though some progress were made recently.
> >>>>>>>
> >>>>>>> For MSVC there are a number of issues yet to be addressed, this is
> >>>>>>> with the intention of using vcpkg.
> >>>>>>>  1. Fix cmake scripts for wxwidgets
> >>>>>>>  2. Add opencascade to vcpkg
> >>>>>>>  3. Add swig to vcpkg (or sip if that is what we want to use in
> the future)
> >>>>>>>  4. Probably a small handful of other things need to be done
> >>>>>>>
> >>>>>>> On Mon, 6 Jul 2020 at 20:35, Jeff Young <jeff@xxxxxxxxx> wrote:
> >>>>>>>>
> >>>>>>>> I love this part:
> >>>>>>>>
> >>>>>>>> wxPython4.0 (needed for Python3)
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> And I thought our versioning was challenged. ;)
> >>>>>>>> _______________________________________________
> >>>>>>>> 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
> >>>> _______________________________________________
> >>>> 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
>


-- 
Mark

Follow ups

References