Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

NMAKE : fatal error U1077

by yellowman (Initiate)
on Sep 17, 2008 at 18:36 UTC ( #712095=perlquestion: print w/ replies, xml ) Need Help??
yellowman has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to build Perl 5.8.8 from source using nmake and I am getting the following error:

NMAKE : fatal error U1077: 'C:\WINDOWS\system32\xcopy.EXE' : return code '0x4' Stop.

My compiler is nmake from the MS Visual C++ Express Edition 2008

I have never built Perl from source before so I figured I would give it a shot.

nmake seems to work, nmake test also seems to work, nmake install fails with the above error

I can get it to skip the error by doing the install with the /I flag, but it looks like a partial install because it only installs wperl.exe and not perl.exe.

I can send my Makefile if you guys want to take a look... Here are what some of the variables equal:
INST_DRV = c: INST_TOP = $(INST_DRV)\perl\5.8.8 CCTYPE = MSVC90FREE CCHOME = C:\Program Files\Microsoft Visual Studio 9.0\VC
Any ideas?

Comment on NMAKE : fatal error U1077
Download Code
Re: NMAKE : fatal error U1077
by BrowserUk (Pope) on Sep 17, 2008 at 18:56 UTC

    What command was it trying to execute? (xcopy obviously, but with what parameters?)

    Return code 4 for xcopy is defined as "Initialisation error occurred. There is not enough memory or disk space, or you entered an invalid drive name or invalid syntax on the command line.", which is so generic that you'll need to examine the command to work out what is wrong.

    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.
      I am just using the standard Makefile that came with the 5.8.8 source. It looks like it uses xcopy to install all of the files. I have heard of xcopy having memory problems, but I figured with any luck it was just something I had set wrong in the Makefile. Here are the last few lines of output before the crash...
      xcopy /f /r /i /d bin\*.bat c:\perl\5.8.8\bin\*.* 0 File(s) copied ..\perl.exe -I..\lib ..\installhtml --podroot=.. --htmldir=./h +tml --pod path=pod:lib:ext:utils --htmlroot="file://c|\perl\5.8.8\html" --libpo +d=perlfunc :perlguts:perlvar:perlrun:perlop --recurse xcopy /f /r /i /e /d html\*.* c:\perl\5.8.8\html\*.* File not found - *.* 0 File(s) copied NMAKE : fatal error U1077: 'C:\WINDOWS\system32\xcopy.EXE' : return co +de '0x4' Stop.
        It's not obvious to me just where the error occurs. Seems odd that both of those xcopy commands don't actually copy any files. Are there really no *.bat files in the bin folder, and no files at all in the html folder ?

        Actually, if there were no *.bat files in the bin folder then I would expect to see a "File not found - *.bat" message. The absence of that message would indicate that at least one .bat file exists ... yet 0 files get copied. Do you get the same responses if you run those 2 xcopy commands manually (from the appropriate directory of course) ?

        Is the return code '0x4' an xcopy return code (as BrowserUK suggested) or is it an nmake return code ?

Re: NMAKE : fatal error U1077
by dHarry (Abbot) on Sep 18, 2008 at 09:10 UTC

    I doubt that xcopy is having memory problems. You need a really large number of files to get this error. Unless you use an old version of xcopy. Well do ya? :-)

    In some cases when xcopy is used for making backups it makes a difference under what user the command is executed, for example if you access data on a mapped network drive (user System/Administrator/other) but in your case thatís (probably) also not relevant.

    I think it could be something silly like a missing file (probably the file is there but not in the right place according to xcopy) or a file name that is too long so it bombs out with a "0x4". I would check from where the command is run, under what user and if the files are visible from that place.

    Hope this helps

    BTW Why do you build it yourself on Windows? Surely using prefab binaries is the easier solution;-)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://712095]
Approved by ikegami
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (10)
As of 2014-09-23 09:17 GMT
Find Nodes?
    Voting Booth?

    How do you remember the number of days in each month?

    Results (216 votes), past polls