最簡單Fedora 29(30)下編譯spice-gtk-0.36 (含交叉編譯方法)

 

一、下載文件:

編譯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依賴,需要同時導出。最後運行效果:

到此爲止一切完成,如果有問題可以評論交流。祝君好運。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章