Wireshark-dev: Re: [Wireshark-dev] Wireshark v1.7.0 build issue with MSVC 2005

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Thu, 14 Jul 2011 10:39:10 +0100
On 14/07/2011 05:10, Pradip Biswas wrote:



From: wsgd <wsgd@xxxxxxx>
To: Developer support list for Wireshark <wireshark-dev@xxxxxxxxxxxxx>
Sent: Thu, July 14, 2011 2:40:15 AM
Subject: Re: [Wireshark-dev] Wireshark v1.7.0 build issue with MSVC 2005

Le 13/07/2011 20:21, Pradip Biswas a écrit :
Hi,
I tried building the latest 1.7.0 code on WinXP (32-bit) and Win7 (64-bit) both having MSVC 2005. I am stuck with the error "'ml': is not recognized as an internal or external command, operable program or batch file" almost at the beginning of "nmake -f Makefile.nmake all."
Producing 64 bits version should require ml64.exe.
If you have this error on your Win7 64 bits,
 I think you did not call something like "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat",
 and so, you are going to produce 32 bits version.

[PB]: Ok. I am fine with 32-bit build. But the build failed on WinXP 32bit with the same MSVC 2005 producing the same ml error.

Do I need to do something special to get past this issue? I searched for ml.exe in the MSVC installation folder, I did not find anything there. Though there is a file called ml64.exe. I have not installed either the VC run-time Redistributable package nor the PSDK. Do I need any of those?
PSDK was needed for me on Win7 64bits with MSVC 2008 EE (to have ml64.exe).
ml64.exe is supposed to be included in the not EE version of MSVC 2008.

Even after installing PSDK (from : http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3138),
 I have no ml.exe or ml64.exe into my installation of MSVC 2005 EE.

[PB]: So how did you resolve it finally? Should the error go away if I install PSDK?

To make sure the SDK tools are used in preference to the MS VC tools, prepare your command shell by running the SDK "SetEnv.cmd" command file instead of "vcvarsxx.bat".  This sets the paths to use all the tools, headers and libraries from the SDK.  Note that it takes parameters to control the build environment, look at the start of the file to discover them.

-- 
Regards,

Graham Bloice