Wireshark-dev: Re: [Wireshark-dev] Windows build environment
From: "Graham Bloice" <graham.bloice@xxxxxxxxxxxxx>
Date: Wed, 18 Jan 2012 10:12:10 -0000

> -----Original Message-----
> From: wireshark-dev-bounces@xxxxxxxxxxxxx [mailto:wireshark-dev-
> bounces@xxxxxxxxxxxxx] On Behalf Of Andriy Beregovenko
> Sent: 17 January 2012 20:38
> To: wireshark-dev@xxxxxxxxxxxxx
> Subject: Re: [Wireshark-dev] Windows build environment
> 
> Hi Graham,
> 
> On Mon, Jan 16, 2012 at 09:39:19AM -0000, Graham Bloice wrote:
> >
> >
> > > -----Original Message-----
> > > From: wireshark-dev-bounces@xxxxxxxxxxxxx [mailto:wireshark-dev-
> > > bounces@xxxxxxxxxxxxx] On Behalf Of Andriy Beregovenko
> > > Sent: 13 January 2012 23:14
> > > To: wireshark-dev@xxxxxxxxxxxxx
> > > Subject: Re: [Wireshark-dev] Windows build environment
> > >
> > > Hi Graham,
> > >
> > > Oh, this is very actual issue.
> > >
> > > My personal "wishlist" consist of two things:
> > > 1. Generation of register.c must be completely reworked, cause most
> > > times
> > I
> > > must wait about 15-20 minutes when recompiling sources; 2. Make
> > > CMake default for win-platform building is really good idea.
> > >
> >
> > Are you using a platform native build of python or the Cygwin version?
> > A platform native build should faster.  When I've been doing intensive
> > work on a single dissector I've commented out the bit of
> > Makefile.nmake that generates register.c when it wasn't required.
> 
> How I can detect this? I'm use windows-msi-installer from python.org.
> Version 2.7.2. Btw at compile time I get error in python script
works(another
> script, not that script that generate register.c)
> 

Andriy,

The output of nmake -f Makefile.nmake verify_tools will tell you which
python you are using.  If you've installed Windows Python 2.7 into the
default directory it should be C:\Python27\python.exe.

config.nmake has some settings for which python to use, but if you leave
everything at the defaults it should pick up the Windows python
installation.

> > As the generation of register.c uses Python across all platforms
> > replacing it would require another cross platform solution, and as my
> > guess is that the generation is I/O bound moving to a compiled rather
> > than an interpreted solution may not improve things.
> Anyway, to compile wireshark you need to install many other "more
> traditional" tools, like bash and perl. Hence there are pocible much
faster
> replacement for python :) But, i think, this is more holywat theme then
> practical.
> 

I would be very surprised to find Cygwin bash or perl faster than a native
Python, or even a Cygwin Python.  On my Win XP build VM, generating
register.c using windows Python 2.7 takes 6 seconds.