locked
Problem for building RTOS (Migrated from community.research.microsoft.com) RRS feed

  • Question

  • Hello everyone:
    I am a student and I am going to implement the eMIPS system on my own computer, but there is a problem I can not surpass when I followed the tutorial, so I hope I can find some help here.
    About the 2.3.4, RTOS, I download the mmlite-0.112 and follow the installation process,but when I build the target, it always give the error like this:
    ../../genspec.js<258,7> Microsoft JScript runtime error: invalid procedure call or argument
    NMAKE: fatal error U1077, 'for' return code '0x4ad250a0'
    NMAKE: fatal error U1077, ' ../../nmake.exe' return code '0x2'
    I tried anyway I can find but no result. I even tried different machines and different versions of Visual studio and no luck at all.
    So I wonder where should I improve for this problem.
    Is that means I have to use gcc rather than VS to build the target since the target is mips? if this is the case, what kind of efforts should I do?
    I really appreciate your help.
    Allen
    REPLY:

    Hi Allen,

    Thank you for your interest in eMIPS, sorry to hear you are having problems with the RTOS build.
    I will need more information from you, because I cannot reproduce this error.
    What I did was:
      1) Download mmlite-0.112.zip from the download page, and extract it to a new c:\MMLite folder
      2) Start a "Visual Studio Command Window" from the "Visual Studio Tools"
      3) Type the following:
              cd c:\MMLite
              set MMLITE_SDK=c:\MMLite
              nmake -nologo TARGETCPU=mips TARGETTYPE=release TOOLS=gnu
    Because this was a fresh folder without GCC installed in it I receive the following build error:
               ....
               1 file(s) copied.
               1 file(s) copied.
       compiling iids.c
       The system cannot find the path specified.
       NMAKE : fatal error U1077: 'c:\MMLite\tools\emips\bin\gcc' : return code '0x1'
       Stop.
       NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\BIN\nmake.EXE"' : return code '0x2'
       Stop.
       NMAKE : fatal error U1077: 'nmake' : return code '0x2'
       Stop.

    Once I install GCC in the tools\emips directory the build now succeeds, last output is:
       Filesystem image preserved in 0.flp
               ren 0.flp fs.flp
               del boot.exe
               copy fs.flp c:\MMLite\build\mips_gnu\release\bin\Mlfs.flp
               1 file(s) copied.
               dir c:\MMLite\build\mips_gnu\release\bin\Mlfs.flp
        Volume in drive C has no label.
        Volume Serial Number is 72D0-1A63
      
        Directory of c:\MMLite\build\mips_gnu\release\bin
      
       07/14/2010  07:26 AM            91,140 Mlfs.flp
                      1 File(s)         91,140 bytes
                      0 Dir(s)  64,205,967,360 bytes free

    I will need some more information from you, like the OS version and VS version (mine was Win7, VS2005).
    Then try the above steps exactly and send me the output.

    Thanks,
    sandro-

     

    REPLY:

     

    Hi Sandro:

    Thank you very much for the quick response, but the thing is I still could not finish it.
    So far I tested three computers: Window XP professional SP3 + VS 2008; Windows XP professional SP3 +VS 2003; Windows XP professional SP2 + VS2005, and all of them give me the same error even I follow your instructions.
    Actually, I could not build the gcc also, I downloaded the cygwin-1.5-legacy and tried to exactly follow the steps, but found that several packages were weird, for example: ash and mktemp are not available or obsoleted, expat and termcap are not located in the same category as described in the tutorial. After many attempts, I surpass this step and decide to use the pre-built set of gcc tools you provided. I would like to resolve this problem later.
    Then I found I also could not finish RTOS, Here is my process:
     1) Download mmlite-0.112.zip from the download page, extract it to C:\\and give it a new name MMLite (c:\MMLite)
      2) Start a "Visual Studio .NET 2003 Command Prompt", from the "Visual Studio Tools".
      3) Move the "emips-tools" folder to the c:\MMLite\tools folder, so the gcc is located in "C:\MMLite\tools\emips\bin" (even when I skip this step, it has the same error)
     4) Type the following:
                    cd c:\MMLite
                    set MMLITE_SDK=C:\MMLite
                    nmake -nologo TARGETCPU=mips TARGETTYPE=release TOOLS=gnu
                   
                   mkdir C:\MMLite\build\web
                   mkdir C:\MMLite\build\stubs
                   mkdir C:\MMLite\build\mips_gnu\release\obj\conf\tmp
                   mkdir C:\MMLite\build\mips_gnu\release\obj\conf\tmp2
                   mkdir C:\MMLite\build\mips_gnu\release\obj\conf\tmp3
                   mkdir C:\MMLite\build\mips_gnu\release\obj\conf\package
                   copy C:\MMLite\conf\spec-schema.xml .
                   1 file(s) copied.
                   copy C:\MMLite\conf\expanded-schema.xml .
                   1 file(s) copied.
                   copy C:\MMLite\conf\ spec-schema.xml C:\MMLite\build\web
                   1 file(s) copied.
                   copy C:\MMLite\conf\expanded-schema.xml C:\MMLite\build\web
                   1 file(s) copied
                   cd C:\MMLite\conf
                   %SYSTEMROOT%\system32\cscript //nologo C:\MMLite\conf\scripts\genspec.js -v -n spec -o C:\MMLite\build\web\docindex.htm C:\MMLite\conf\spec.xml
                   Expanding and inheriting C:\MMLite\conf\spec.xml
                   Found 44 includes
                   Skipped optional exp.xml (not found)
                   Skipped optional asyncio.xml (not found)
                       Skipped optional vmenif2.xml (not found)
                       Skipped optional utilif2.xml (not found)
                       Skipped optional cimif.xml (not found)
                       Skipped optional ../src/vmen/vmen.xml (not found)
                       Skipped optional profiles2.xml (not found)
                       Found 4 includes
                       Skipped optional web2.xml (not found)
                       Skipped optional ../src/crypto/cyphers2.xml (not found)
                       Skipped optional ../src/drivers/bus/busdrivers2.xml (not found)
                       Skipped optional ../src/drivers/video/framebuffers2.xml (not found)
                       Found 0 includes
                       Found 21 @sample-file refs
                       Method Put arg NewValue ix 3 selector-is ix5
                       Method Put arg NewValue ix 3 selector-is ix5
                       Method QueryRequest arg QueryValue ix 1 selector-is ix 3
                       Method QueryRequest arg QueryValue ix 1 selector-is ix 3
                       Method DataItem arg QueryValue ix 0 selector-is ix 2
                       Method ChangeResource arg NewValue ix 4 selector-is ix 6
                       Method ChangeResource arg NewValue ix 4 selector-is ix 6
                       Generating html pages in C:\MMLite\build web/
                       C:\MMLite\conf\scripts\genspec.js(258,7) Microsoft JScript runtime error: Invalid procedure call or argument
            
                                cd C:\MMLite\build\mips_gnu\release\obj\conf\tmp
                       NMAKE : fatal error U1077: 'for' : return code '0x4ad250a0'
                       Stop.
                       NMAKE : fatal error U1077 '"C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\BIN\nmake.exe"' : return code '0x2'
                       Stop.

    It seems this is caused by the java script, but when I want to reinstall the windows script 5.7, it reminds me that the version on my machine is newer than 5.7 and no need to install.
    I also install the XML 4.0 parser, now I have msxml 2,3,4,6, but it does not work too.
    I have already set the vcvars32.bat, no effect right now.
    I even tried using /I to suppress the error but could not pass.

    So, I wonder where I made the mistake? Did I put the folder in the wrong place?
    Thanks for your kindly help.

    Best regards

    Allen
     
    REPLY:
     

    Hi Allen,

     

    Thanks for following up. 

    The problem is with the international language setup, the quick work-around is to disable it for the build window.  There are a few XML files in the RTOS that do not explicitly indicate their ISO charset encoding:

    <?xml version='1.0' encoding="iso-8859-1"?>

    If you want to keep your language settings during the build, an alternative approach is to edit all the XML files that are missing the encoding tag.

     

    Thanks,

    sandro-

     

     

     

    Wednesday, June 22, 2011 4:49 PM