【问题标题】:How to compile QEMU for 64 bit如何为 64 位编译 QEMU
【发布时间】:2014-03-20 06:42:39
【问题描述】:

我正在尝试编译 64 位的 qemu 源代码,但它正在编译为 32 位..

这些是我正在使用的命令


#!/bin/bash

 cd qemu-1.6.0\

 export
 PKG_CONFIG_PATH=`pwd`/../support_libs/libs/glib/lib/pkgconfig:`pwd`/../suu
 pport_libs/libs/zlib/lib/pkgconfig export CFLAGS="-mabi=64"


 QEMU_CFLAGS="-mabi=64" sudo ./configure
 --prefix=`pwd`/../support_libs/libs/qemuu  --target-list=mips64-softmmu --enable-kvm --enable-fdt --with-coroutine=sigaltss tack --extra-cflags="-I`pwd`/../support_libs/libs/glib/include/glib-2.0/"


sudo make && sudo make install

我将它保存在一个名为“build.sh”的文件中,并将这个脚本作为“./build.sh”运行

任何帮助将不胜感激

【问题讨论】:

    标签: compilation makefile qemu


    【解决方案1】:

    您正在以./build.sh 的身份执行脚本,您导出的环境将是子shell 会话,但是当您在脚本中提供sudo make 时,它不会继承导出的变量。

    通过删除 makemake installsudo 稍微更改脚本,并以 sudo 运行脚本

    #!/bin/bash
    
     cd qemu-1.6.0\
    
     export
     PKG_CONFIG_PATH=`pwd`/../support_libs/libs/glib/lib/pkgconfig:`pwd`/../suu
     pport_libs/libs/zlib/lib/pkgconfig export CFLAGS="-mabi=64"
    
    
     QEMU_CFLAGS="-mabi=64" sudo ./configure
     --prefix=`pwd`/../support_libs/libs/qemuu  --target-list=mips64-softmmu --enable-kvm --enable-fdt --with-coroutine=sigaltss tack --extra-cflags="-I`pwd`/../support_libs/libs/glib/include/glib-2.0/"
    
    
     make && make install
    

    现在运行脚本

    sudo ./build.sh
    

    【讨论】:

    • 非常感谢您抽出宝贵的时间.. 但现在当我编译时,它在 :tcg-op.h" 文件中显示错误。这是错误 --------- -------------------------------------------------- -------- 在 /home/epuser/ajayku/final_test/qemu/qemu-1.6.0/tcg/tcg.h:117:0 包含的文件中,来自 /home/epuser/ajayku/final_test/qemu /qemu-1.6.0/exec.c:29: /home/epuser/ajayku/final_test/qemu/qemu-1.6.0/tcg/tcg-op.h:26:1: 错误:'int'之前的预期标识符make[1]: *** [exec.o] 错误 1
    猜你喜欢
    • 2019-04-04
    • 2011-03-25
    • 2018-08-04
    • 2012-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-02
    相关资源
    最近更新 更多