一、下載文件:
編譯gtk首先需要protocol的前置環境部署所以一定要先編譯spice-protocol。
兩個包都可以在官方下載,地址:https://www.spice-space.org/download.html
如果找不到或者無法打開網頁可以從這裏下載:
protocol:https://download.csdn.net/download/wastedsoul/11249717
gtk:https://download.csdn.net/download/wastedsoul/11249713
二、直接編譯生成Fedora下可執行文件:
1.解壓編譯protocol應該都比較常規沒什麼可說的,給出基本命令:
tar -xjvf spice-protocol-0.12.15.tar.bz2
cd spice-protocol-0.12.15
./configure
make
sudo make install
2.解壓gtk查看README文件有說明:
Build dependencies:
------------------
. On Fedora use:
dnf builddep spice-gtk
所以執行命令: dnf builddep spice-gtk
然後根據提示進行常規編譯。一般在執行configure的時候不會出現問題(小問題百度可解),但是在make的時候我這裏提示找不到
SPICE_TUNNEL_SERVICE_TYPE_IPP
SPICE_TUNNEL_IP_TYPE_IPv4
通過排查發現這兩個枚舉定義在enums.h文件中,而且發現在/usr/include/spice-1/spice/下的enums.h沒有對其進行定義,我直接將其進行了替換執行:cp /usr/local/include/spice-1/spice/enums.h /usr/include/spice-1/spice/ 再編譯(同protocol方法)就通過了。
期間應該還需要依賴glib和redhat-rpm-config,所以這裏給出參考:
yum install json-glib-devel
dnf install redhat-rpm-config
最後生成的可執行文件在tools中
直接運行./spicy就可以看到界面然後輸入遠端kvm地址就可以使用了。
到此Fedrora版本安裝運行完成。
三、Fedora交叉編譯生成WINDOWS下可執行EXE文件:
1.在Fedora下安裝windows環境,這裏只給出64位的方法。(32位同理)
yum install mingw64-*
2.接下來將protocol和gtk的壓縮包解壓編譯(最好在一個自己創建的新的文件夾下進行解壓編譯,這樣可以防止後期自己不清楚哪個版本)
protocol:
tar -xjvf spice-protocol-0.12.15.tar.bz2
cd spice-protocol-0.12.15
mingw64-configure
mingw64-make
sudo mingw64-make install
gtk:
tar -xjvf spice-gtk-0.36.tar.bz2
cd spice-gtk-0.36
mingw64-configure
mingw64-make
sudo mingw64-make install
---------------------------------------------------------------------------------------------------
備註:由於我覺得在windows上直接使用鼠標點一點操作會更方便,所以還重新交叉編譯了virt-viewer,下面也給出方法,如果不需要的可以直接跳過。同樣給出編譯方法:
virt-viewer:
tar -xzvf virt-viewer-8.0.tar.gz
cd virt-viewer-8.0
mingw64-configure
mingw64-make
sudo mingw64-make install
-------------------------------------------------------------------------------------------------------
到這裏就完成了編譯,最後生成文件目錄: /usr/x86_64-w64-mingw32/sys-root/mingw/bin
最後導出到windows系統上,需要注意運行exe需要依賴交叉編譯的各種dll依賴,需要同時導出。最後運行效果:
到此爲止一切完成,如果有問題可以評論交流。祝君好運。