編譯qemu和libvirt使支援SDL

2021-06-29 04:35:25 字數 1315 閱讀 4020

qemu-kvm-1.5.3-60.el7.src.rpm

libvirt-1.1.1-29.el7.src.rpm

要安裝rpmbuild這個包

編譯安裝qemu:

首先:安裝原始碼:rpm -ivh qemu-kvm-0.12.1.2-2.415.el6.src.rpm,

要編譯的原始碼和需要的spec檔案都自動放到了/root/rpmbuild/目錄下。

然後:修改/root/rpmbuild/specs/qemu-kvm.spec這個檔案,將兩處(--disable-sdl)改為(--enable-sdl)。

之後:編譯rpm包:rpmbuild --target=x86_64 -bb /root/rpmbuild/specs/qemu-kvm.spec編譯好的rpm包在/root/rpmbuild/rpms/x86_64/中

最後:安裝生成的rpm包,如果系統中存在舊版本,則強制安裝就可以替代之前的版本(rpm -ivh *.rpm --force),一般只需要安裝和qemu有關的rpm包即可。

安裝後執行/usr/libexec/qemu-kvm,應該就直接看到qemu的sdl視窗,如果提示缺少依賴包或者少庫,則可以依次安裝。

編譯安裝libvirt:

過程與qemu相同,修改libvirt的spec檔案把下面兩行刪除:

--with-qemu-user=% 

--with-qemu-group=% 

就可以進行編譯和安裝(有些生成包不是必須的,可以不裝)。

現在就可以用sdl視窗來開啟虛擬機器了,不過開啟之前需要進行一些設定。

如果你用了virt-manager工具,則將現在使用的display硬體刪除,然後新增graphics硬體,選擇本地sdl選項,執行虛擬機器就可以直接在sdl中看到虛擬機器了。

如果virt-manager鏈結不上sdl,列印類似could not initialize sdl之類的,先setenforce 0一下。

如果不使用virt-manager軟體,而在shell中使用libvirt來開啟sdl,則需要在本地虛擬機器的xml檔案中新增或者修改graphics標籤:

其中display和xauth的值可以通過當前終端獲得:

輸入命令:env,其中會有兩行:

display=:0

xauthority=/run/gdm/auth-for-root-oaeuyz/database

設定到graphics標籤中即可,如果要全屏開啟,則再新增選項fullscreen="yes"

如果virt-manager鏈結不上sdl,列印類似could not initialize sdl之類的,先setenforce 0一下。

QEMU編譯問題

1.庫檔案支援 qeme0.15 之前版本不需要glibc 2.0支援 再編譯前確保libsdl1.2 dev有安裝,否則再執行qemu時會出現vnc server running on 127.0.0.1 5900 其實這個也不算是錯誤了,可以使用vnc client連線,但是如果安裝libsdl...

QEMU編譯指南

本文編寫時目前最新版本是5.20 wget tar xvjf qemu 5.2.0.tar.xz cd qemu 5.2.0 git clone cd qemu git submodule init git submodule update recursiveninja 是google的一名程式設計...

QEMU編譯安裝

qemu是乙個支援跨平台虛擬化的虛擬機器,有user mode和system mode兩種配置方式。其中qemu在system mode配置下模擬出整個計算機,可以在qemu之上執行乙個作業系統。qemu的system mode與常見的vmware和virtualbox等虛擬機器比較相似,但是qem...