2014年12月8日 星期一

virt-viewer 1.0 編譯

 virt-viewer 官網

OS: Fedora 20
compiler: MinGW
Source:  virt-viewer-1.0.tar.gz

1. 建置環境

    安裝完 Fedora 完後, 除了安裝 MinGW 外, 會再安裝一些3'rd party library.
    1. 安裝 MinGW:
        sudo yum install mingw*
    2. 安裝 SPICE-GTK
        SPICE-gtk 編譯
        *註 2014/11/18測試 MinGw 安裝時含有舊版 spice-gtk-0.22, 可以略過編譯 spice-gtk

2.建置 virt-viewer

    1. 必要元件安裝
         sudo yum install icoutils
    2.  然後設定編譯環境
        32bit:   mingw32-configure --with-gtk=2.0 --with-spice-gtk
        64bit:   mingw64-configure --with-gtk=2.0 --with-spice-gtk
        *gtk3 我測試會 crash, 所以只用 2.0, virt-viewer 2.0 才支援 gtk3.
    3. 編譯
        32bit: mingw32-make
        64bit: mingw64-make
        安裝
        32bit: sudo mingw32-make install
        64bit: sudo mingw64-make install
        *建議分開 32bit & 64bit ,這樣比較不會有問題

3. 測試

    如要在肥多拉下測試執行檔, 先安裝wine (關於wine)
    sudo yum install wine
    windows 下測試時額外需要的檔案(3'rd party),
    32bit: 從 /usr/i686-w64-mingw32/sys-root/mingw/bin 下 copy
    64bit: /usr/x86_64-w64-mingw32/sys-root/mingw/bin 下 copy
libgdk-3.0.dll
libcairo-gobject-2.dll
libcairo-2.dll
libgcc_s_sjlj-1.dll
libpixman-1-0.dll
libpng16-16.dll
zlib1.dll
libglib-2.0-0.dll
libintl-8.dll
iconv.dll
libgobject-2.0-0.dll
libffi-6.dll
libgdk_pixbuf-2.0-0.dll
libgio-2.0-0.dll
libgmodule-2.0-0.dll
libpango-1.0-0.dll
libpangocairo-1.0-0.dll
libpangowin32-1.0-0.dll
libgtk-3-0.dll
libatk-1.0-0.dll
libgtk-vnc-2.0-0.dll
libgvnc-1.0-0.dll
libgcrypt-11.dll
libgpg-error-0.dll
libgnutls-28.dll
libgmp-10.dll
libhogweed-2-5.dll
libnettle-4-7.dll
libp11-kit-0.dll
libtasn1-6.dll
libspice-client-glib-2.0-8.dll
libcelt051-0.dll
libcrypto-10.dll
libgstapp-0.10-0.dll
libgstbase-0.10-0.dll
libgstreamer-0.10-0.dll
libxml2-2.dll
libgstinterfaces-0.10-0.dll
libjpeg-62.dll
libopus-0.dll
libssl-10.dll
libusb-1.0.dll
libusbredirhost-1.dll
libusbredirparser-1.dll
libspice-client-gtk-3.0-4.dll
libspice-controller-0.dll
libssp-0.dll
libvirt-0.dll
libcurl-4.dll
libidn-11.dll
libssh2-1.dll
libportablexdr-0.dll
libwinpthread-1.dll

額外的GUI設定檔, 從 /virt-viewer-1.0/src 下 copy
virt-viewer-auth.xml
virt-viewer-about.xml
virt-viewer.xml

聲音相關的library: gstreamer 0.1
    32bit: copy folder /usr/i686-w64-mingw32/sys-root/mingw/lib/gstreamer-0.10
    64bit: copy folder /usr/x86_64-w64-mingw32/sys-root/mingw/lib/gstreamer-0.10 

4. 產出

        32bit: 在 /usr/i686-w64-mingw32/sys-root/mingw/bin
        64bit:  在 /usr/x86_64-w64-mingw32/sys-root/mingw/bin

        debug-helper.exe
        remote-viewer.exe (主要執行檔)
        virt-viewer.exe
        windows-cmdline-wrapper.exe

       *不管是在 linux 還是 windows 文件都要擺到相對位置才能正常運作
       從 /usr/i686-w64-mingw32/sys-root/mingw/bin Copy 的放到 ./bin
       從 /usr/i686-w64-mingw32/sys-root/mingw/lib Copy 的放到 ./lib



沒有留言:

張貼留言