[dpdk-dev] Compiler for Windows

Thomas Monjalon thomas at monjalon.net
Thu Jan 3 18:32:45 CET 2019


Hi Jason,

We need to get facts in order to do a good decision.
Please, let's give detailed feedback for each option.

03/01/2019 18:10, Jason Messer:
> +Jeffrey, Manasi
> 
> We will get the most traction from the Windows developer community
> if we use msvc. The only thing preventing that last time was
> GNU extensions used in DPDK source which were not ISO C standards
> compliant.

I think the main issue is that MSVC is not C99 compliant.

> We were also experimenting with Clang/LLVM running natively on Windows
> host but ran into a bunch of issues (maybe others made further progress?).

Chromium is built with clang on Windows, so I wonder what prevents us
to use it?

> GCC using Windows Subsystem for Linux (WSL) would be an interesting
> option and could be a secondary option for MSVC for Windows developers.

I thought GCC on WSL would build a Linux binary?
Can we build a Windows native binary with it?

What about mingw-w64? Is there any drawback?


> From: Stephen Hemminger <stephen at networkplumber.org> 
> > What about Gcc under the WSL thing (ie Linux emulation in Windows).
> > Much better than Cygwin type stuff.
> > 
> > From: Thomas Monjalon <thomas at monjalon.net>
> > > Hi,
> > > 
> > > We need to gather inputs about the pros/cons of the C compilers
> > > available for Windows.
> > > 
> > > Interesting criterias could be:
> > > 	- ease of use
> > > 	- availability
> > > 	- standards compliance
> > > 	- performance
> > > 
> > > When the comparison will be complete, we should publish it in the doc/
> > > directory, while porting DPDK to Windows.
> > > 
> > > I start with few data:
> > > 
> > > * gcc|clang on cygwin
> > > 
> > > 	- not native
> > > 
> > > * gcc/mingw
> > > 
> > > * gcc/mingw-w64
> > > 
> > > * clang/mingw-w64
> > > 
> > > * clang --target=x86_64-windows-msvc
> > > 
> > > * icc
> > > 
> > > 	- not freely available
> > > 
> > > * msvc
> > > 
> > > 	- native
> > > 	- specific command line
> > > 	- not C99





More information about the dev mailing list