← Back to team overview

kicad-developers team mailing list archive

Re: Critical path item / request for help

 

If anyone is using vcpkg based dependencies for building kicad with
msvc, could you please test the build configurations that I have
enabled on jenkins?

See https://jenkins.simonrichter.eu/job/windows-kicad-msvc-vcpkg/

The debug build fails for 64 bit builds, and there is some issue with
curl for 32 bit builts for both debug and release.

Nick Østergaard

On Wed, 8 Jul 2020 at 02:08, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
>
> I wish I could say I was surprised.
>
> On 7/7/20 4:34 PM, Mark Roszko wrote:
> > 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
> > <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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
> >     <mailto: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
> >     <mailto: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
> >     <mailto: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
> >     <mailto: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
> >     <mailto: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
> >     <mailto: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
> >     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> >     Unsubscribe : https://launchpad.net/~kicad-developers
> >     More help   : https://help.launchpad.net/ListHelp
> >
> >
> >
> > --
> > 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


References