编译virt viewer之前执行的configure命令,是没有使能usb-redir相关的功能,virt viewer是否支持usbredir是完全依赖于spice-gtk的。

virt viewer对spice-gtk的依赖关系,可以从virt viewer的configure结果看出来:

  1. configure: Configuration summary
  2. configure: =====================
  3. configure:
  4. configure:  Features:
  5. configure:
  6. configure:       Gtk: 3.0
  7. configure:
  8. configure:  Libraries:
  9. configure:
  10. configure:        GLIB2: -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include   -pthread -Wl,--export-dynamic
  11. -lgthread-2.0 -lgmodule-2.0 -lrt -lglib-2.0
  12. configure:
  13. configure:          GTK: -pthread -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/atk-1.0
  14. -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0
  15. -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng12   -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0
  16. -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0
  17. configure:
  18. configure:      GTK_VNC:
  19. configure:
  20. configure:    SPICE_GTK: -pthread -I/usr/local/include/spice-client-gtk-3.0 -I/usr/local/include/spice-client-glib-2.0
  21. -I/usr/local/include -I/usr/local/include/spice-1 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/
  22. -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0
  23. -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng12   -L/usr/local/lib -lspice-client-gtk-3.0
  24. -lgtk-3 -lspice-client-glib-2.0 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo
  25. -lgobject-2.0 -lglib-2.0
  26. configure:
  27. configure:      LIBXML2: -I/usr/include/libxml2   -lxml2
  28. configure:
  29. configure:      LIBVIRT: -I/usr/local/include   -L/usr/local/lib -lvirt -ldl
  30. configure:
  31. configure:        OVIRT:
  32. configure:

其中spice-client-gtk-3.0和spice-client-glib-2.0即是spice-gtk的编译结果。

版本

spice-gtk-0.20.tar

virt-viewer-0.5.6.tar.gz

编译libusbredir

可以在http://www.spicespace.org/page/UsbRedir下载最新版本

  1. ./configure
  2. make
  3. sudo make install

编译spice-gtk

要在virt viewer中使能usbredir,必须先正确的编译spice-gtk,--enable-usbdir=yes 使能usbredir

  1. ./configure --with-gtl=3.0 --with-audio=gstreamer --enable-usbdir=yes --enable-smartcard=yes
  2. make
  3. make install

make install 会把spice-gtk编译的库,头文件等安装到系统中,virt viewer的编译依赖这些库和头文件。

 

编译virt viewer

  1. ./configure --with-gtk=3.0 --with-spice-gtk
  2. make
  3. make install

sudo ./remote-viewer, 使用sudo执行remote-viewer,因为要操作USB,需要超级用户权限。

如果顺利,执行remote-viewer后,可在file菜单下看到 “USB device selection” 选项。

virt viewer Usbredir USB重定向的更多相关文章

  1. 客户端通过spice-gtk实现USB重定向

    1.安装必要的工具: sudo apt-get install build-essential autoconf git-core intltool 2.安装必要的依赖包: -dev libxfixe ...

  2. USB重定向

    第一期中,我们一起简要的看了下传统PC和桌面云下USB重定向和USB设备重定向方式的差异,了解了桌面云下外设兼容性问题来源的根源-USB设备本身驱动不规范/不支持, 或者虚拟机驱动实现上与USB设备对 ...

  3. 谈USB重定向的方式

    在桌面虚拟化的项目中,常常会遇到用户提出的各自外设需求,这时产品对外设的兼容性就成为了项目成败的拦路虎 本文试图用通俗易懂的语言讲讲USB外设重定向的工作流程,先看看普通PC上USB设备的工作流程 u ...

  4. KVM通过qemu实现USB重定向

    KVM是通过qemu来支持USB设备的,可以在启动的时候就指定需要连接的USB设备,也可以系统启动后动态的添加删除.通过qemu的help可知,使用qemu的usb_add host:xxx:xxx来 ...

  5. 在KVM虚拟机中使用spice系列之二(USB映射,SSL,密码,多客户端支持)

    在KVM虚拟机中使用spice系列之二(USB映射,SSL,密码,多客户端支持) 发布时间: 2015-02-27 00:16 1.spice的USB重定向 1.1 介绍 使用usb重定向,在clie ...

  6. spice在桌面虚拟化中的应用系列之三(USB映射实现,SSL加密,密码认证,多客户端支持)

    本系列其它文章 spice在桌面虚拟化中的应用系列之一(spice简介,性能优化等) spice在桌面虚拟化中的应用系列之二(Linux平台spice客户端的编译安装,支持USB映射) 1.spice ...

  7. USB/IP项目总结

    青云最近推出了云桌面功能,用户可以像使用本地计算机一样访问远程主机,支持USB重定向,不禁让我想起了2年前调试的一个开源项目USB/IP,当时还用英文写了一个总结性文档,放在这里方便以后查看.     ...

  8. USB fuzzing

    简介 最近看一些USB fuzzing方面的东西,总结一下.主要是软件方面的工作. vUSBf 文章在这里:https://www.blackhat.com/docs/eu-14/materials/ ...

  9. ovirt user guide

    Contents [hide]  1 ⁠Accessing the User Portal 1.1 Logging in to the User Portal 1.2 Logging out of t ...

随机推荐

  1. Android AIDL-跨进程

    Android在设计理念上强调组件化,组件之间的依赖性很小.我们往往发一个Intent请求就可以启动另一个应用的Activity,或者一个你不知道在哪个进程的Service,或者可以注册一个广播,只要 ...

  2. chrome浏览器无法设置打开特定网页

    最近chrome浏览器更新后,发现以前设置的启动浏览器“重上次停下的地方继续”功能消失了. 当我点击设置网页时,会出现如上提示. 后来有同事给了如下一个连接,里面说到这个是公司的超级管理员搞的,他定义 ...

  3. sql 游标循环当中重新赋值

    sql 游标循环当中的变量必须重新赋值不然变量的值就是前次循环的值

  4. LeetCode Swap Nodes in Pairs 交换结点对(单链表)

    题意:给一个单链表,将其每两个结点交换,只改尾指针,不改元素值. 思路:迭代法和递归法都容易写,就写个递归的了. 4ms /** * Definition for singly-linked list ...

  5. Java [Leetcode 172]Factorial Trailing Zeroes

    题目描述: Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be ...

  6. 【C#学习笔记】类型转换

    using System; namespace ConsoleApplication { class Program { static void Main(string[] args) { " ...

  7. ffmpeg windows 雪花声解决方法

    替换所有文件里的<math.h>为<mathimf.h>即可. 我用ffmpeg-0.6.3版测试时,好像mathimf.h文件和其他文件有冲突,需要修改源码. 和qdm2.c ...

  8. zoj 2286 Sum of Divisors

    // f(n)表示 n的约数和 不包括自己// 给你一个m 求1 到 100万里面 f(n)<=m 的个数// 那么首先要用筛选求出所有出 f(n)// 然后就好办了 // 写好后 看见别人好快 ...

  9. Control File (二)重建CONTROLFILE --- NORESETLOG

    create controlfile  --- noresetlog 由于丢失control01.ctl  alter_karl.log 中显示: -------------------------- ...

  10. Hibernate优化

    前言 在一般情况下,Hibernate需要将执行转换为SQL语句从而性能低于JDBC.但是在经过比较好的性能优化之后,性能还是让人相当满意的,特别是应用二级缓存之后,甚至可以获得比较不使用缓存的JDB ...