Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Building wireshark-0.99.8-SVN-23860 fails due to uncreated d

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Fri, 14 Dec 2007 17:59:23 +0000
J.C. Wren wrote:
> Building under Windows, when the Makefile.nmake got to the following
> step, it failed.  The plugins directory had not created prior to it
> attempting to create the 0.99.8-SVN-23860 directory.  The patch I
> applied to the ./Makefile.nmake is below.
>
>         if not exist wireshark-gtk1\wimaxasncp mkdir wireshark-gtk1\wimaxasncp
>         xcopy ".\wimaxasncp\*.*" wireshark-gtk1\wimaxasncp /d
> .\wimaxasncp\dictionary.dtd
> .\wimaxasncp\dictionary.xml
> 2 File(s) copied
>         if not exist wireshark-gtk1\plugins\0.99.8-SVN-23860 mkdir
> wireshark-gtk1\plugins\0.99.8-SVN-23860
> 4NT: The system cannot find the path specified.
>  "C:\wireshark\wireshark-gtk1\plugins\0.99.8-SVN-23860"
> NMAKE : fatal error U1077: 'if' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO
> 8\VC\BIN\NMAKE.EXE"' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO
> 8\VC\BIN\NMAKE.EXE"' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO
> 8\VC\BIN\NMAKE.EXE"' : return code '0x2'
> Stop.
>
> [c:\wireshark]
>
> $ diff -u Makefile.nmake.org Makefile.nmake
> --- Makefile.nmake.org  2007-12-14 12:42:31.890625000 -0500
> +++ Makefile.nmake      2007-12-14 12:42:57.062500000 -0500
> @@ -921,6 +921,7 @@
>         xcopy ".\tpncp\*.dat" $(INSTALL_DIR)\tpncp /d
>         if not exist $(INSTALL_DIR)\wimaxasncp mkdir $(INSTALL_DIR)\wimaxasncp
>         xcopy ".\wimaxasncp\*.*" $(INSTALL_DIR)\wimaxasncp /d
> +       if not exist $(INSTALL_DIR)\plugins mkdir $(INSTALL_DIR)\plugins
>         if not exist $(INSTALL_DIR)\plugins\$(VERSION) mkdir
> $(INSTALL_DIR)\plugins\$(VERSION)
>         xcopy ".\plugins\agentx\agentx.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
>         xcopy ".\plugins\artnet\artnet.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
>
>
> Of course, 'mkdir' on a *real* OS would support a -p option.
>   
Of course, 'mkdir' on a *standard* cmd prompt doesn't need a -p option. 
Maybe your use of the 4NT shell is the issue here:

C:\temp>mkdir /?
Creates a directory.

MKDIR [drive:]path
MD [drive:]path

If Command Extensions are enabled MKDIR changes as follows:

MKDIR creates any intermediate directories in the path, if needed.
For example, assume \a does not exist then:

    mkdir \a\b\c\d

is the same as:

    mkdir \a
    chdir \a
    mkdir b
    chdir b
    mkdir c
    chdir c
    mkdir d

which is what you would have to type if extensions were disabled.



-- 
Regards,

Graham Bloice