原则上来说,qemu, libvirt, libusb, usbredir, spice等都可以通过 apt-get install的方式从Ubuntu源在线安装。但是这样如果碰到一点问题,就比较难办,如果自己从源代码开始编译,那么出了问题可以通过阅读和修改源码,修复相关问题。

我们要搭建的各个软件模块是有相互依赖性的,比如qemu依赖libspice-server, Usbredir依赖libusb,因此在编译之前先要安排一个顺序。第一个选中的是Libusb,因为它是一个底层的usb库,不依赖其他几个模块。

即便如此,我们还是要先从Ubuntu源在线安装一些第三方库,这些库很成熟,我们也不需要维护,因此就选择在线安装。

为了编译Libusb,我们先做如下准备:

dev@xxx:~/workroom$ sudo apt-get install autotools-dev devhelper  doxygen pkg-config devscripts

这个过程比较长,总共大概会下载安装1G左右的相关包,请耐心等待。

安装完成后,我们开始获取Libusb的源码,官方源码在http://www.libusb.org/下,但是考虑到我们也想把它做成比较通用的 debian包,我们可以从https://launchpad.net/debian/+source/libusbx/2:1.0.15-1上下载源码:libusbx_1.0.15-1.dsclibusbx_1.0.15.orig.tar.bz2libusbx_1.0.15-1.debian.tar.xz

下载以后将上述三个文件上传至编译目录: ~/workroom/libusbx/。

用下面的命令解开源码:

dev@xxx:~/workroom/libusbx$ sudo dpkg-source –x libusbx_1.0.15-1.dsc

进入新生成的目录libusbx-1.0.15

编译命令相当简单:

dev@xxx:~/workroom/libusbx/libusbx-1.0.15$ sudo debuild

稍等一会编译完成,最后报了一点错,是有关deb包的签名加密错误的,可以忽略。

生成的debian包在上一层目录dev@xxx:~/workroom/libusbx/下,我们可以看到:

Libusb-1.0-0_1.0.15-1_amd64.deb,libusb-1.0-0-dbg_1.0.15-1_amd64.deb和libusb-1.0-0-dev_1.0.15-1_amd64.deb。

这样libusb的编译就成功完成了,这些包可以安装到同平台版本的任何其他机器上去了。

 

Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(三)的更多相关文章

  1. Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(八)

    Libvirt 是用c写的一个管理虚拟机及其资源(如网络.存储和外设等)的工具库,它不仅支持KVM/QEMU,它还支持xen,Vmware,OpenVZ和VirtualBox等其他HyperVisor ...

  2. Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(十五)

    接下来我们试验虚拟机的网络配置功能,KVM虚拟机网络配置主要有两种方式:NAT方式和Bridge方式.今天我们主要理解和实验NAT方式的网络配置. NAT方式是kvm安装后的默认方式,它支持主机与虚拟 ...

  3. Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(十六)

    今天我们继续实验Bridge方式的网络配置. Bridge的逻辑原理图如下: 上图中的“br0”就充当了一个桥的作用,主机上的物理网口eth0等根据需要加入到这个桥里面,所有虚拟机要跟外界通信都通过这 ...

  4. Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(十三)

    今天我们实验libvirt提供的快照功能,快照可以用于系统恢复,防止安装了某些软件或中病毒等情况导致系统损毁的情况. 一.快照类型 1)        磁盘快照 内部的:快照驻留在原来的镜像文件内部 ...

  5. Mac下搭建基于PlatformIO的嵌入式开发环境(STM32开发)

    PlatformIO简介 PlatformIO是开源的物联网开发生态系统.提供跨平台的代码构建器.集成开发环境(IDE),兼容 Arduino,ESP8266和mbed等 支持在Windows.Lin ...

  6. 小白秒懂的Windows下搭建基于pytorch的深度学习环境

    配置环境总体思路 1.依据python版本选择对应Anaconda版本: 2.依据显卡驱动版本选择对应的CUDA版本: 3.依据CUDA版本选择对应的cudnn和pytorch版本. 一.Anacon ...

  7. Windows 7下 搭建 基于 ssh 的sftp 服务器

    Windows  xp 下 搭建 基于  ssh 的sftp 服务器,服务器端可以用 freesshd,F-secure server等,filezilla server不可用,之前傻乎乎的用file ...

  8. ubuntu12.10下OpenFoam的编译

    最近在ubuntu12.10下编译OpenFoam,遇到一些问题,小记一下. 首先到官网下载源码包(我这里下载的是OpenFOAM-2.3.0.tgz,ThirdParty-2.3.0.tgz). 1 ...

  9. [IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!

    最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统免责声明一.如果因为使用本文档照成损失(系统崩溃.数据丢失等),作者不承担任何责任.二.本文档只是个人使用本文 ...

随机推荐

  1. javascript3

    计算阶乘函数:<script> function factorial(n){ var product=1; while (n>1){ product*=n;//product=pro ...

  2. Windows Server 2008安装 百度Wifi \ 360Wifi \ 小米Wifi 失败的解决方法

    服务器管理 -> 功能 -> 安装 [无线LAN]服务

  3. 软件project(六)——需求分析

           需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明:        我将 ...

  4. python向mysql中存储JSON及Nodejs取出

    虽然把JSON数据存入mysql也是比较蛋疼,但是相比使用Nodejs嵌套处理多个mysql查询并拼接返回数据也算是没mongo时的一个折中方案了. 我使用python拼接了一个json格式的字符串, ...

  5. java 转成字符串 json 数组和迭代

    当你需要转成一串一串的json 排列 .当内容和遍历它们. 首页进口 net.sf.json.JSONArray和net.sf.json.JSONObject 两个jar 包 String str = ...

  6. jmeter 控制器

    Critical Section Controller :

  7. 【Linux 工作经常使用命令 】

    1, 批量杀某个程序 比方某个程序叫  url_info.py, 起了若干个进程 . 高速查杀. 先查看 ps aux | grep url_info.py 确认没问题 ,能够杀,则批量kill ps ...

  8. 在希望的田野上--生物柴油(Biodiesel)光明的未来

    请看下图: 这是科学家Bernie Tao教授给美国Purdue大学的学生们出的题目"有关大豆.谷物产品的创新竞赛",实质上,就是鼓舞研究.开发及应用生物柴油(Biodiesel) ...

  9. 【工作笔记二】ASP.NET MVC框架下使用MVVM模式

    ASP.NET MVC框架下使用MVVM模式 原文:http://www.cnblogs.com/n-pei/archive/2011/07/21/2113022.html 对于asp.net mvc ...

  10. 简话ASP.NET Web API

    简话ASP.NET Web API 在vs2012中,我们很容易在根据选择的ASP.NET MVC Web应用程序来新建一个Web API应用,聪明的你一定想见得到,Web API和MVC有着某种联系 ...