ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
April 17th, 2024 | 14:30-16:00 SGT (UTC+8) | Online

Wireshark-dev: [Wireshark-dev] Building on Windows with CMake: Status and help needed

From: Joerg Mayer <jmayer@xxxxxxxxx>
Date: Sat, 5 Oct 2013 13:03:12 +0200
Hello,

I've made some progress and am now able to almost build a first 32 bit
executable with VSEE2010. The executable (capinfos) using nmake as build tool.
The cmake stage (for nmake) is working as much as is needed, i.e. no GUI
package detection right now.
Compilation is working, but linking fails:
  capinfos.c.obj : error LNK2001: unresolved external symbol __imp__optind
  capinfos.c.obj : error LNK2019: unresolved external symbol __imp__getopt referenced in function _main
I've spent some hours digging into it but everything I've tried has failed.

Other open issues:
- The same warning over and over again:
  cl : Command line warning D9025 : overriding '/MD' with '/MDd'
- Problems with the WS_DLL_PUBLIC mechanism, one out of many examples:
  C:\wireshark\trunk\epan\plugins.c(31) : warning C4273: 'wslua_plugin_list' : inconsistent dll linkage
        c:\wireshark\trunk\epan\plugins.h(65) : see previous definition of 'wslua_plugin_list'

My next steps (not necessarily in that order):
- Try to get the remaining executables as close to linking as possible.
- GTK3 and GTK2 builds (gtk detection).
- Is there a recipe for Qt5 builds on Windows (esecially the qt5 package)?
- Go for 64 bit builds.

If someone feels motivated to help with any of the problems or unfinished
tasks above or anything else: Go ahead - I don't want a monoploly on this ;-)
Coordination via the list or IRC(freenode) #wireshark?

Full logs of a build of svn revision 52377
cmake -G "NMake Makefiles" ..\..\trunk
cmake --build . -- VERBOSE=1

can be found here:
http://www.loplof.de/kram/cmake.log
http://www.loplof.de/kram/build.log

Ciao
   Jörg
-- 
Joerg Mayer                                           <jmayer@xxxxxxxxx>
We are stuck with technology when what we really want is just stuff that
works. Some say that should read Microsoft instead of technology.