How to build qemu-system-arm in Linux

来源:互联网 发布:中国农大网络远程教育 编辑:程序博客网 时间:2024/05/19 05:30
http://www.cnx-software.com/2012/03/08/how-to-build-qemu-system-arm-in-linux/


Most (all?) Linux distributions have a binary package for qemu-system (including qemu-system-arm) in order to emulate non-x86 targets such as ARM, MIPS, PPC, Alpha and more.

However, in some case you may need to very latest version of qemu-system and it may not be able yet for your distribution.

Here’s how to do to build qemu-system-arm without building all qemu-system-***:

  1. Download the latest stable version of qemu (qemu 1.0.1 at the time this post was written):
    wget http://wiki.qemu.org/download/qemu-1.0.1.tar.gz

    or get the latest source code (development tree) which has the very latest features and bug fixes, but may not work or compile:

    git clone git://git.qemu.org/qemu.git

    or get the latest source code from linaro (which may be more up-to-date for ARM targets):

    git clone git://git.linaro.org/qemu/qemu-linaro.git
  2. Configure qemu to build ARM targets:
    cd qemu./configure --target-list=arm-softmmu,arm-linux-user
  3. Build and install qemu-system-arm:
    make -j 2sudo make install
  4. Verify the latest version of qemu-ssytem-arm is installed:
    # qemu-system-arm --versionQEMU emulator version 1.0,1, Copyright (c) 2003-2008 Fabrice Bellard

Read more: http://www.cnx-software.com/2012/03/08/how-to-build-qemu-system-arm-in-linux/#ixzz2PYELjueA




  1. Nikolay Nikolaev
    March 8th, 2012 at 18:00 | #1
    Reply | Quote

    For ARM, I’d always prefer the Linaro’s qemu:
    http://git.linaro.org/gitweb?p=qemu/qemu-linaro.git

    • cnxsoft
      March 8th, 2012 at 18:31 | #2
      Reply | Quote

      Yes, you’re probably right about that, especially for ARMv7 platforms.

  2. Tim
    March 27th, 2012 at 09:47 | #3
    Reply | Quote

    I followed the steps here but did not end up seeing a change in version when running qemu-system-arm –version

    I was unable to get the “make install” to work without sudo. Maybe that is a clue as to what I did wrong?

    TIA for help!

  3. cnxsoft
    March 27th, 2012 at 10:04 | #4
    Reply | Quote

    @ Tim
    I’ve updated the steps to use “sudo make install” instead. Sorry about that.

    If qemu-system-arm version has not changed, it’s possible your old qemu is installed in a different path.

    Assuming the make install worked, run “locate qemu-system-arm” to see the locations of qemu-system-arm.

    (If there is only one and this is the old one, run “updatedb” first and then “locate qemu-system-arm”)

    If you want to overwrite your old qemu with the new one, you can use –prefix=INSTALL_PATH with configure, something like:

    ./configure --target-list=arm-softmmu,arm-linux-user --prefix=/usr/local

    or you can just use the full path to run it, e.g. /usr/local/bin/qemu-system-arm

  4. Eschol
    April 17th, 2012 at 14:17 | #5
    Reply | Quote

    @cnxsoft
    Do you know if the QEMU supports Qualcomm MSM ARM board series? How can one enable the support for the MSM board series?

    Thanks.

  5. cnxsoft
    April 17th, 2012 at 14:52 | #6
    Reply | Quote

    @ Eschol
    You can run “qemu-system-arm -M ?” to see the list of supported boards.
    I can’t see any Qualcomm board that are supported.

    I’ve searched for “Qualcomm Virtual Platforms”, but could not find any. It appears Qualcomm will be working on this, since they are currently recruiting Virtual platform engineers.

    As long as your program does not access the hardware directly, you should be able to run your application in other ARM Cortex A8/A9 based board such as the Beagleboard.


Read more: http://www.cnx-software.com/2012/03/08/how-to-build-qemu-system-arm-in-linux/#ixzz2PYESrTI7
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(928) | 评论(0) | 转发(0) |
0

上一篇:RHEL6 命令行下安装图形桌面

下一篇:ARM汇编调试

相关热门文章
  • SHTML是什么_SSI有什么用...
  • shell中字符串操作
  • 卡尔曼滤波的原理说明...
  • 关于java中的“错误:找不到或...
  • shell中的特殊字符
  • linux dhcp peizhi roc
  • 关于Unix文件的软链接
  • 求教这个命令什么意思,我是新...
  • sed -e "/grep/d" 是什么意思...
  • 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
原创粉丝点击