Get the output of a program in a file using QEmu

Joel Sherrill joel.sherrill at OARcorp.com
Wed Jun 25 17:03:50 UTC 2008


Reng Zeng wrote:
> Hi Joel,
>
> Thanks for your tips, I tried it as steps below, it still does not work.
>
> 1.  ../rtems/configure USE_COM1_AS_CONSOLE=1 BSP_PRESS_KEY_FOR_RESET=0 
> --target=i386-rtems4.9 --enable-rtemsbsp=pc586 --disable-posix 
> --disable-itron --enable-tests=samples
> 2. make clean
> 3. make
> 4. make install
>
> Then I run it my qemu:
>
> /usr/bin/qemu -monitor null -nographic -serial file:qemu.log -boot a 
> -m 128 -fda '/home/zengreng/rtems-boot.img' -hda 
> 'fat:/home/zengreng/workspace/rtems_tools/src/generated/'  --no-reboot
>
Try -serial stdio and see if that works.  Maybe file: doesn't work.  I 
have never used it.
> The program to run is managed by Makefile I drafted, not automake, I 
> attached it to see whether that is the cause things do not work, shall 
> I add something like "USE_COM1_AS_CONSOLE" into it as well?
>
There was no program attached but any of the samples should just work
that way.
>
> Thanks again,
> Alan
>
> 2008/6/25 Joel Sherrill <joel.sherrill at oarcorp.com 
> <mailto:joel.sherrill at oarcorp.com>>:
>
>     Reng Zeng wrote:
>
>         Hello,
>
>         It do NOT work for me, I add "#define USE_COM1_AS_CONSOLE 1 "
>         into my init.c, and run qemu by
>             qemu -nographic -serial file:output.txt -boot a -m 128
>         -fda myimage.img -hda fat:.
>
>     No.  That's not going to work.  You have to configure with that
>     set on the configure
>     comment line.
>
>     ..../configure ... USE_COM1_AS_CONSOLE=1 BSP_PRESS_KEY_FOR_RESET=0
>
>     The BSP_PRESS_KEY_FOR_RESET=0 configures the BSP to not wait for a key
>     press before resetting.  Just add  --no-reboot to your qemu
>     command line and
>     it will "power down" which is exiting. :-D
>
>         I did not get anything from output.txt. It run well in graphic
>         mode, but I want the output from the program.
>
>         I would appreciate if you could shed me some light on my mind :)
>
>     This is a fragement from the shell script I use.
>
>     QEMU="/usr/local/bin/qemu -cpu 486"
>
>     runit()
>     {
>      ARGS="-m 8 -boot a -fda ${fd0Image} -hda fat:${hd0Dir} \
>            -monitor null -nographic -serial stdio --no-reboot"
>
>       ${QEMU} ${ARGS} >${logfile} 2>&1 &
>     }
>
>
>         Thanks,
>         Alan
>
>         2008/3/21 Jean-Claude Grange <lebauce at free.fr
>         <mailto:lebauce at free.fr> <mailto:lebauce at free.fr
>         <mailto:lebauce at free.fr>>>:
>
>
>            Hello,
>
>            Thank you all for answers. USE_COM1_AS_CONSOLE =1 worked
>         just fine.
>            I'm really interested in your patch, Joel. Are you going to
>         commit it
>            soon ? Or would you mind sending your patch to me so that I can
>            test it.
>
>            Thanks
>            See you
>
>
>            Le 17 mars 08 à 19:47, Joel Sherrill a écrit :
>
>            > Jean-Claude Grange wrote:
>            >> Hello,
>            >>
>            >> Thanks for your answer. I'll try that.
>            >> But I wonder if it's possible to do it without modifying the
>            >> program ?
>            >>
>            >>
>            > Define USE_COM1_AS_CONSOLE =1 on the RTEMS configure
>            > command line and the console will move to the serial port.
>            > This is how I run RTEMS and GCC tests in an automated
>            > fashion.
>            >
>            > I discovered another nice qemu option --no-reboot which
>            > exits when the simulated PC does a reset.  This means you
>            > get a single run of the application and then it exits.  I
>         have
>            > a pending patch in my tree to make the BSP reset on
>            > application exit or exception without waiting for a human
>            > to press a character.  This sped up the gcc test runs
>            > by a large factor since they have >50K tests.
>            >
>            > --joel
>            >> José Marinho <zemanel at gmail.com
>         <mailto:zemanel at gmail.com> <mailto:zemanel at gmail.com
>         <mailto:zemanel at gmail.com>>> wrote:
>            >>
>            >>
>            >>> you can allways create a file, format it to a specific
>         fylesystem
>            >>> and pass
>            >>> it to qemu as an hard drive, and tell the rtems program
>         to create
>            >>> and write
>            >>> in a file in that hard drive. and then you can mount
>         that file
>            >>> with loop
>            >>> device and access it and get the output file. that's
>         the approach
>            >>> that I'de
>            >>> take. Hope that's usefull to you
>            >>>
>            >>> José Marinho
>            >>>
>            >>> On 16/03/2008, Jean-Claude Grange <lebauce at free.fr
>         <mailto:lebauce at free.fr>
>            <mailto:lebauce at free.fr <mailto:lebauce at free.fr>>> wrote:
>            >>>
>            >>>> Hello,
>            >>>>
>            >>>> I'm sorry if this is a stupid question but I've
>         searched on the
>            >>>> mailing
>            >>>> list and
>            >>>> didn't find an answer.
>            >>>> I'm trying to get the output of a RTEMS program (for
>         example the
>            >>>> Hello
>            >>>> from the
>            >>>> samples testsuite) using QEmu, into a file. I'm using the
>            >>>> command (on
>            >>>> Linux) :
>            >>>>
>            >>>> qemu -nographic -serial file:output.txt -boot a -fda
>         myimage.img
>            >>>> -hda
>            >>>> fat:.
>            >>>>
>            >>>> but I don't get anything in the 'output.txt' file. I
>         also tried -
>            >>>> serial
>            >>>> /dev/ttyS* and with the -monitor stdio option but I
>         still have
>            >>>> nothing. I
>            >>>> must
>            >>>> be doing something wrong.
>            >>>>
>            >>>> I would really appreciate your help.
>            >>>> Thank you
>            >>>> _______________________________________________
>            >>>> rtems-users mailing list
>            >>>> rtems-users at rtems.com <mailto:rtems-users at rtems.com>
>         <mailto:rtems-users at rtems.com <mailto:rtems-users at rtems.com>>
>
>            >>>> http://rtems.rtems.org/mailman/listinfo/rtems-users
>            >>>>
>            >>>>
>            >>>
>            >>> --
>            >>> <img> http://www.deec.uc.pt/common/img/deezoom.gif </img>
>            >>>
>            >>>
>            >>
>            >>
>            >> _______________________________________________
>            >> rtems-users mailing list
>            >> rtems-users at rtems.com <mailto:rtems-users at rtems.com>
>         <mailto:rtems-users at rtems.com <mailto:rtems-users at rtems.com>>
>
>            >> http://rtems.rtems.org/mailman/listinfo/rtems-users
>            >>
>            >
>            >
>            > --
>            > Joel Sherrill, Ph.D.             Director of Research &
>         Development
>            > joel.sherrill at OARcorp.com        On-Line Applications
>         Research
>            > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
>            >   Support Available             (256) 722-9985
>            >
>            >
>
>            _______________________________________________
>            rtems-users mailing list
>            rtems-users at rtems.com <mailto:rtems-users at rtems.com>
>         <mailto:rtems-users at rtems.com <mailto:rtems-users at rtems.com>>
>
>            http://rtems.rtems.org/mailman/listinfo/rtems-users
>
>
>
>
>     -- 
>     Joel Sherrill, Ph.D.             Director of Research & Development
>     joel.sherrill at OARcorp.com        On-Line Applications Research
>     Ask me about RTEMS: a free RTOS  Huntsville AL 35805
>      Support Available             (256) 722-9985
>
>
>


-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985





More information about the users mailing list