Does rtems-test work on MinGW64?

Chris Johns chrisj at rtems.org
Wed Aug 16 08:52:14 UTC 2017



On 16/08/2017 07:02, Jiri Gaisler wrote:
> I have fixed the compile problems for the sis simulator on MinGW64, and
> I am now trying to run it through the rtems-test utility. This does
> however not work and gives the following error log:
> 
> 
> $ rtems-test --rtems-bsp=erc32-sis
> sparc-rtems4.12/c/erc32/testsuites           RTEMS Testing - Tester,
> 4.12.not_released
>  Command Line: C:/msys64/opt/rtems/4.12/bin/rtems-test
> --rtems-bsp=erc32-sis sparc-rtems4.12/c/erc32/testsuites
>  Python: 2.7.13 (default, Jan 17 2017, 13:56:44)  [GCC 6.3.0 64 bit (AMD64)]
> [  2/566] p:0   f:0   u:0   e:0   I:0   B:0   t:0   i:0   | sparc/erc32:
> linpack.exe
> [  1/566] p:0   f:0   u:0   e:0   I:0   B:0   t:0   i:0   | sparc/erc32:
> dhrystone.exe
> error: run.cfg:70: execute failed:
> /C/msys64/opt/rtems/4.12/bin/sparc-rtems4.12-sis.exe -nouartrx -r -tlim
> 600 s sparc-rtems4.12/c/erc32/testsuites/benchmarks/linpack/linpack.exe:
> exit-code:2
> error: run.cfg:70: execute failed:
> /C/msys64/opt/rtems/4.12/bin/sparc-rtems4.12-sis.exe -nouartrx -r -tlim
> 600 s
> sparc-rtems4.12/c/erc32/testsuites/benchmarks/dhrystone/dhrystone.exe:
> exit-code:2
> .
> 
> If I run the executed command separately on the command line in the
> MinGW64 shell, it runs fine:
> 
> 
> $  /C/msys64/opt/rtems/4.12/bin/sparc-rtems4.12-sis.exe -nouartrx -r
> -tlim 600 s
> sparc-rtems4.12/c/erc32/testsuites/fstests/fsdosfsname01/fsdosfsname01.exe
> 
>  SIS - SPARC instruction simulator 2.8,  copyright Jiri Gaisler 1995
>  Bug-reports to jiri at gaisler.se
> 
>  ERC32 emulation enabled
> 
> simulation limit = 4105032704 (600000.000 ms)
> 
> 
> *** BEGIN OF TEST FSDOSFSNAME 1 ***
> *** END OF TEST FSDOSFSNAME 1 ***
> 
> 
> Is rtems-test supported on MinGW64 for any other simulator ...?
> 

I have not run rtems-test on Windows much at all. The main reason was the lack
of serial console support.

I suspect the problem will be related to the path not being in host format. What
is 'data[0]' here:

https://git.rtems.org/rtems-tools/tree/tester/rt/config.py#n122

?

The call 'path.host(..)' will convert the path.

This is sort of tricky because there could be other paths in the command that
also need to be converted. The command line comes from a config file so it is
not easy to know what is ok and what is not.

I suppose calling 'path.exists()' on each element in 'data' and those that exist
convert to a host path might help. Something like:

def convert_args(args):
    nargs = []
    for arg in args:
        if path.exists(arg):
            nargs += [path.host(arg)]
        else:
            nargs += [args]
    return nargs

It breaks for things like '-I/blah/blah' but it might be worth hacking for now
and seeing what else breaks next.

Chris



More information about the devel mailing list