This is a static archive of our old Q&A Site. Please post any new questions and answers at ask.wireshark.org.

Setting Development Project Under Visual Studio 2012

1

although i believe that not all new must be better. trying to create my development project for Wire Shark in the first time, and although the developers guide is pretty great, it seems it not yet updated for development under visual studio 2012.

after going through steps of the Win32: Step-by-Step Guide in sub section 2.2, and all went quite well and easy, i came to a problem while trying to verify all installed tool as described in sub section "2.2.7. Verify installed tools", after executing the "nmake -f Makefile.nmake verify_tools" command the next error message received in the CMD:

Makefile.nmake(10) : fatal error U1052: file 'win32.mak' not found
Stop.

since the configuration.nmake file lack of MSVC_VARIANT with the value of any kind for visual studio i did selected MSVC2010 (since it is the closest and possible less differences, naively hoped it would be sufficient, it's not) so my guess there is more places and even files to be configured,

the question is which files and places are to be configured and what are the values.

P.S.

i don't know where to place it (it is my first time) but for not configuring CMD every time i suggest in Visual Studio to add CMD as external tool which will be executed automatically as described in the guide. to accomplish this follow the next steps: 0) open visual studio 1) go to: Tools->External Tools... 2) Click Add 3) in the "Title" field enter the display name of you desire (i.e. WireShark CMD) 4) in the "Command" field type in the path for the cmd.exe, e.g. C:\Windows\System32\cmd.exe 5) in the "Argument" field type in the following: /k "{Visual Studio Install Dir}\VC\vcvarsall.bat" (where {Visual Studio Install Dir} = C:\Program Files\Microsoft Visual Studio 11.0 in my case) 7) in Initial directory type any desired path for CMD to be in on launch. 8)Click Ok button 9) go to "Tools" and find newly added tool with the title given to it I(i.e. WireShark CMD)

now CMD may be executed directly from visual studio with all parameters and variables predefined.

asked 18 Sep '12, 02:23

igkutikov's gravatar image

igkutikov
16112
accept rate: 0%

There is an easy way to get a command prompt with all the (VS) paths set, use the link provided in the Start Menu item for VS: Visual Studio xxx | Visual Studio Tools | Visual Studio Command Prompt.

(18 Sep '12, 12:21) grahamb ♦

3 Answers:

0

MSVC 2012 is currently not supported by Wireshark (i.e., no one has yet committed the changes to the Wireshark Windows build process to use MSVC 2012).

Update: I've made the changes to the build process (in the development Wireshark sources) as needed so that Wireshark can be built with VS 2012.

(The changes were minimal and just in two files: config.nmake and config.h.win32).

As Graham notes in his answer, the win32.make file must be obtained and then copied to a dir specified in the Windows environment variable 'include' (after the command environment is configured for the use of VS 2012) before the build can be done.

answered 18 Sep '12, 07:50

Bill%20Meier's gravatar image

Bill Meier ♦♦
3.2k1850
accept rate: 17%

edited 20 Sep '12, 14:35

please post the results whether you have succeeded or no, and if did then what is the correct configurations, thanks

(18 Sep '12, 10:39) igkutikov

0

My installation of VS 2012 Pro doesn't have it, although neither does VS2010 Pro. I did find it in the Platform SDK, specifically the Windows 7 version: Platform SDKs\Windows\v7.0A\Include. It may be that to use VS2012 folks may need to download the Win7 PSDK and adjust paths in the Wireshark build command prompt accordingly.

answered 18 Sep '12, 12:17

grahamb's gravatar image

grahamb ♦
19.8k330206
accept rate: 22%

(Note: I've updated my comments to this question to remove some now obsolete discussion and to reflect current status)

The Win SDK 8 installed with VS 2012 EE doesn't have the win32.mak file.

I copied win32.mak from the win sdk 7.1 to one of the vs2012 %include% dirs (undoubtedly not the right dir).

(18 Sep '12, 12:38) Bill Meier ♦♦

excuse me for my ignorance but when you say %include% dirs, what did you mean?

(18 Sep '12, 13:14) igkutikov

(My shorthand)

AFAIK the Windows 'include' environment variable is used by VS2012 as the search path for includes (including win32.mak).

For VS2012 the variable(after doing the setup for 'cmd') is set as follows: (on my Win 7 32 bit system)

include=C:\Program Files\Microsoft Visual Studio 11.0\VC\INCLUDE; C:\Program Files\Windows Kits\8.0\include\shared; C:\Program Files\Windows Kts\8.0\include\um; C:\Program Files\Windows Kits\8.0\include\winrt;

(For VS2010, the paths are set (on my system) to point to the VC10 compiler and the Win SDK 7).

(18 Sep '12, 13:26) Bill Meier ♦♦
1

Specifically:

include=c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE;C:\Program Files\Microsoft SDKs\Windows\v7.0A\include;

(18 Sep '12, 13:29) Bill Meier ♦♦

0

From a DOS cmd line,

set INCLUDE=%INCLUDE%;C:\Program Files\Microsoft SDKs\Windows\v7.0A\include;

answered 26 Mar '13, 11:54

joeEmbed's gravatar image

joeEmbed
16223
accept rate: 0%

For me this command did nothing. Only after creating the variable through windows GUI did it work for me.

(16 Apr '14, 11:55) YXI