Wireshark-dev: Re: [Wireshark-dev] Status Cmake Win32 support
From: Graham Bloice <[email protected]>
Date: Sat, 12 Oct 2013 19:31:27 +0100
On 11 October 2013 16:09, Joerg Mayer <[email protected]> wrote:
Another milestone hit:
- Win 32bit: The following executables build and run from the build directory
  (as well as capture if they should be able to). *: Acutally tested
  $ ls *exe
  capinfos.exe* dumpcap.exe  mergecap.exe  randpkt.exe   reordercap.exe  tshark.exe*
  dftest.exe    editcap.exe  qtshark.exe*  rawshark.exe  text2pcap.exe   wireshark.exe*
Using CMake to generate a MSVC2010 solution, I can't get near that number of successful executables.  I have used the CMake generated solution with command line build (msbuild Wireshark.sln) and from within VS.  I do have modified CMake files in an attempt to group the "projects" in Visual Studio into some sort of logical tree rather than the large flat list.  I don't believe these changes affect the CMake output to actually build things. I've also enabled the use of make-tap-reg.py for creating the tap register functions which seems to work.
Problems I have seen \ am stuck with:
  • epan generated files always get rebuilt, e.g. diam_dict.c and the like
  • epan won't create register.c, make-dissector-reg.py complains about a missing file, from the output the filename looks odd, I suspect I'm hitting some command line limit:
1>  Generating register.c
1>  Registering 1151 files, 0 cached
1>  Traceback (most recent call last):
1>    File "E:/Wireshark/trunk/tools/make-dissector-reg.py", line 126, in <module>
1>      file = open(filename)
1>  IOError: [Errno 2] No such file or directory: 'E:/Wireshark/trunk/epan\\dissectos/packet-dua.c'
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: "cmd.exe" exited with code 1.
  •  gtkui won't build with GTK3, missing the pango includes: 1>e:\Wireshark\wireshark-win32-libs\gtk3\include\gtk-3.0\gdk/gdktypes.h(35): fatal error C1083: Cannot open include file: 'pango/pango.h': No such file or directory
  • There are the dumpabi projects that I'm not sure are needed for win32; dumpabi, dumpabi-libwireshark, dumpabi-libwiretap, dumpabi-libwsutil.
  • My final score on the projects in the solution is:
E:\Wireshark\build>dir /s /w *.exe
 Directory of E:\Wireshark\build\Debug
capinfos.exe     dumpcap.exe      editcap.exe      mergecap.exe
randpkt.exe      reordercap.exe   text2pcap.exe
 Directory of E:\Wireshark\build\tools\lemon\Debug
E:\Wireshark\build>dir /s /w *.dll
 Directory of E:\Wireshark\build\lib\Debug
wiretap.dll   wsutil.dll
E:\Wireshark\build>dir /s /w *.lib
 Directory of E:\Wireshark\build\Debug
capinfos.lib     editcap.lib      mergecap.lib     reordercap.lib
 Directory of E:\Wireshark\build\lib\Debug
codecs.lib    gtkui.lib     ui.lib        wiretap.lib   wsutil.lib