kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #37187
Re: Using Visual Studio 2017 CE for KiCad development
Alternatively, we could provide them in a dedicated repository on the
kicad org on github. Then they are decoupled from the normal source
and the wild west for IDE confs are self contained. This is just a
suggestion if you think this would be useful.
Den tir. 21. aug. 2018 kl. 19.49 skrev Wayne Stambaugh <stambaughw@xxxxxxxxx>:
>
> If we consider adding this, we open ourselves up to including
> configuration files for every IDE not just VS so it's a Pandora's box.
> If we do decide to allow this, please do not put it in the source root
> path. Personally, I'm not a big fan but as long as it doesn't get in my
> way then I'm not completely opposed to it.
>
> Cheers,
>
> Wayne
>
> On 8/19/2018 9:17 AM, Mark Roszko wrote:
> > Nice. I tried using the VS Cmake support a long time ago when it was
> > initially released but still buggy. Great you got it fully working!
> > Honestly as nice as CLion can be, VS completely blows it away.
> >
> > Personally I would consider using a build and install root of
> >
> >
> > "buildRoot": "${workspaceRoot}\\build\\${name}",
> > "installRoot": "${workspaceRoot}\\install\\${name}",
> >
> > so it doesn't get buried in your user root and you end up wondering,
> > months later, where all your disk space went.
> >
> > This should be considered for commiting into the source tree. It doesn't
> > alter the source and still builds under msys.
> >
> >
> > On Sun, Aug 19, 2018 at 6:05 AM Andrew Lutsenko <anlutsenko@xxxxxxxxx
> > <mailto:anlutsenko@xxxxxxxxx>> wrote:
> >
> > Hi all,
> >
> > I've managed to get KiCad code base to build in VS 2017 and more
> > importantly be parsed
> > by intellisense. Thought I'd share the config for other windows devs.
> >
> > I've been using Atom so far with relative success but it's not
> > great. Decided to try if KiCad can
> > be worked on in real IDE with contextual autocomplete that works.
> >
> > MS has been investing in building support in Visual Studio for non
> > ms build systems. GCC,
> > clang, cmake, non x86 targets, all of this has been coming along in
> > recent releases.
> > Not everything works like in ms build projects, but it's still miles
> > ahead of generic text editors.
> >
> > Prerequisite: have msys2 windows environment with working KiCad build.
> >
> > Get VS 15.8.0 or later. I've tested this on 15.8.1 community edition
> > preview. (It's free).
> >
> > Install additional components:
> > Linux development with C++
> > Visual C++ tools for CMake and Linux
> >
> > Then open VS and go to File -> Open... -> CMake...
> > select CMakeLists.txt in KiCad src root.
> >
> > Next go to CMake -> Change CMake Settings -> CMakeLists.txt
> > In popup window choose Mingw64 Release (or Debug)
> > A file named CMakeSettings.json will be created and you have to
> > tweak a few things.
> > I've attached my CMakeSettings.json for reference but the important
> > bits are:
> >
> > configurations.environments.MINGW64_ROOT - this is path to your
> > mingw64 folder
> > configurations.environments.FLAVOR - mingw flavor, I use
> > x86_64-w64-mingw32
> > configurations.environments.TOOLSET_VERSION should be autodetected,
> > if not check
> > mingw64\lib\gcc\x86_64-w64-mingw32 folder for version. It's
> > 7.3.0 for me
> > configurations.environments.INCLUDE -
> > add ${env.MINGW64_ROOT}\\include to the list
> > configurations.generator - I set it to "MSYS Makefiles" and VS
> > frowns on it but it works.
> > Maybe "Unix Makefiles" work too, I didn't check.
> > configurations.cmakeCommandArgs - this is the tricky one that I had
> > to do trial and error
> > dance with a lot and also read cmake find rules that don't always
> > work. I found this
> > combination to do the job:
> > "-DCMAKE_PREFIX_PATH=${env.MINGW64_ROOT} -DMINGW:STRING=TRUE
> > -DMSYS:STRING=TRUE -DCYGWIN:STRING=TRUE
> > -DOPENGL_INCLUDE_DIR=${env.MINGW64_ROOT}\\include",
> > configurations.buildCommandArgs - remove the "-v" that VS puts
> > there, it just prints version
> > for make. I put "-j6" instead to speed up the build.
> > configurations.intelliSenseMode - VS should auto fill this to
> > "linux-gcc-x64"
> >
> > Remaining configs can be left default, or you can tweak them to your
> > taste.
> >
> > After you save the CMakeSettings.json VS will automatically
> > regenerate CMake cache.
> > Go to CMake menu and you can build all targets or specific ones from
> > there.
> > In my case intellisense only picked up cache after I did full build,
> > so maybe it is required
> > to do at least once.
> >
> > But result is so worth it:
> >
> > intellisense.png
> >
> > Hope this helps!
> >
> > Regards,
> > Andrew
> > _______________________________________________
> > 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
> >
>
> _______________________________________________
> 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