gentoo安装kvm+spice及opencv教程

gentoo安装kvm+spice

很早之前就听说spice相对vnc来说要强大很多,之前因为安装的是32位的系统,没法进行尝试,安装了64位的系统之后,还没时间去折腾过。

上上周其实已经将以前的windows虚拟机的图形方式从vnc换成了spice,昨天又搞定了agent的启动和远程复制粘贴。

先说下安装,安装的过程相对比较方便,首先需要卸载原来安装的app-emulation/qemu-kvm,因为之后要安装的拥有spice功能的kvm和这个包是相互block的。卸载了之后,就需要重新emerge app-emulation/qemu-kvm-spice这个包。否则直接在virt-manager中将虚拟机的显示从vnc切换到spice,在启动的时候会提示这个版本的kvm不支持spice协议。其他和spice相关的包还有:app-emulation/spice,app-emulation/spice-protocol等,如果要在virt-manager中直接接入到spice界面,需要安装net-misc/spice-gtk这个包(不过我在kde中用的时候,发现用net-misc/spice-gtk的时候,会导致整个界面都变成透明的,估计是因为gtk和kwin的特效不太兼容)。

安装还是非常简单的,安装完成之后,就要重新配置原来的windows虚拟机了。在virt-manager中删掉原来的vnc显示,新增一个graphics,类型选择spice server。将原来视频中使用的虚拟显卡换成qxl,这样启动虚拟机之后,就会使用spice了。

前面说到了kde中使用spice-gtk有很多不正常的地方,所以我是直接使用spicec这个命令的,因为没有配置任何的加密,所以连接非常简单,直接使用:

spicec -h 127.0.0.1 -p 5900

端口号可以在增加spice server的时候设置,如果选择自动分配,那么会从5900开始递增分配。

启动之后,需要给里面的windows安装驱动,windows需要的所有二进制文件,都可以在http://spice-space.org/download.html这里的Windows binaries中找到。首先下载qxl driver,在windows提示需要安装驱动文件的时候,安装这个qxl driver,就可以完成了spice显示的功能了。

之前按照http://www.linux-kvm.com/content/rhev-spice-guest-drivers-released-windows这个页面安装windows驱动,前面安装qxl非常方便,但是后面的vdi port driver却一直没有提示需要安装,在最后一步Install SPICE agent之后,这个服务一直无法启动,第一次的尝试spice就到此为止了。

之后又继续搜索了下这个spice agent无法启动,在redhat的bugzilla中发现原来现在sprice agent已经不通过vdi了,需要通过virtio-serial来进行交互。在virt-manager的界面上,怎么样都找不到如何添加这个设备的方法,最后只能通过编辑虚拟机配置文件的方式直接修改了。通过使用virsh edit XXX (XXX为虚拟机的名字),会打开虚拟机的配置文件,根据libvirt网站上的介绍,在devices标签中增加了两个channel:

<channel type=’pty’>
      <target type=’virtio’ name=’arbitrary.virtio.serial.port.name’/>
      <address type=’virtio-serial’ controller=’0′ bus=’0′ port=’1’/>
    </channel>
    <channel type=’spicevmc’>
      <target type=’virtio’ name=’com.redhat.spice.0’/>
      <address type=’virtio-serial’ controller=’0′ bus=’0′ port=’2’/>
    </channel>

保存这个配置文件,启动虚拟机,这个时候windows又会提示发现了新硬件。需要使用spice下载页面上的Windows virtio-serial driver进行安装。安装完成之后,重新安装下spice agent,这个时候spice agent服务就能够正常启动了。通过这个服务,虚拟机就能够和宿主机共享剪切板了。

gentoo安装opencv

之前的基于opencv的应用,在换了gentoo之后,读取png的图片的时候会提示:

libpng warning: Application was compiled with png.h from libpng-1.2.29
libpng warning: Application  is  running with png.c from libpng-1.4.5

写了个脚本之后,发现这个应用依赖的png库都是1.4.5的。上面的提示是libpng在编译时指定错了版本。虽然我本地有1.2和1.4两个版本的libpng,但是头文件只有1.4的。仔细看了下编译完的目录,通过搜索png.h这个关键字,发现竟然以来了opencv里面自带的libpng。按理说如果发现了系统的libpng之后,就不应该再用自带的libpng了。最后在highgui模块的cmakelists.txt文件中发现了这些内容:

if(WITH_JPEG)
add_definitions(-DHAVE_JPEG)
if(NOT JPEG_FOUND)
set(use_3rdparty TRUE)
endif()
endif()
if(WITH_PNG)
add_definitions(-DHAVE_PNG)
if(NOT PNG_FOUND)
set(use_3rdparty TRUE)
endif()
endif()
if(WITH_TIFF)
add_definitions(-DHAVE_TIFF)
if(NOT TIFF_FOUND)
set(use_3rdparty TRUE)
endif()
endif()
if(WITH_JASPER)
add_definitions(-DHAVE_JASPER)
if(NOT JASPER_FOUND)
set(use_3rdparty TRUE)
endif()
endif()
if(use_3rdparty)
    include_directories(“${CMAKE_CURRENT_SOURCE_DIR}/../../3rdparty/include”)
endif()

也就是说,这几个库里面任意一个没有的话,都会把3rdparty/include这个目录加入到头文件的搜索目录中。gentoo在emerge的时候,默认是没有USEjpeg2k的,也就是不使用系统的jasper库,导致引用了自带的png.h。

找到了原因之后,解决起来就很方便了,在emerge opencv之前,确保把jpeg2k加入到USE中即可。

时间: 2024-10-22 18:28:39

gentoo安装kvm+spice及opencv教程的相关文章

centos 6.6 安装 KVM 虚拟机环境的教程

1.首先检查系统是否支持kvm,有两个先决条件 a.系统是x86的,通过命令 uname -a b.CPU 支持虚拟化技术 egrep 'vmx|svm' /proc/cpuinfo 如果看到有输出结果,即证明cpu 支持虚拟化.同时特别注意需要检查 BIOS 中是否开启VT,如果没有启用,虚拟机将会十分慢. 2.使用yum安装kvm 安装kvm内核 yum install -y qemu-kvm.x86_64 qemu-kvm-tools.x86_64 安装virt管理工具 yum insta

CentOS6 mininial 安装KVM 详细教程

CentOS6 mininial 安装KVM 详细教程 初始化设置 ## 关闭防火墙和SELINUX /etc/rc.d/init.d/iptables stop /etc/rc.d/init.d/ip6tables stop chkconfig iptables off chkconfig ip6tables off sed -i 's/enforcing/disabled/' /etc/selinux/config setenforce 0 ## 关闭不必要的服务 /etc/rc.d/ini

Centos 6.3 64bit安装KVM总结

1.[root@kvmtest ~]#egrep 'vmx|svm' /proc/cpuinfo//首先确定你的cpu是否支持vmx或者svm虚拟化,vmx属于inter处理器,svm属于amd处理器,或者用cpu-z查看你的处理器是否支持vt-x虚拟化,bios中开启vt支持. 2.系统安装利用kickstart安装KVM,最主要是添加4个组包 @virtualization //提供虚拟机的环境,主要包含qumu-kvm @virtualization-client//管理和安装虚拟机实例的

win8安装到u盘图文教程

安装win8到u盘不知道大家有没有想过?试想想如果将win8安装到U盘(或者移动硬盘也可以),随身携带,走到哪插上U盘,一切搞定!移动办公,这才是王道,什么"云"都弱爆了!小编今天就带来详细的win8安装到u盘图文教程. Win8安装到u盘图文教程 捣鼓了2天,终于搞定了,不敢独享,特拿来与大家分享下!就拿微软的最新操作系统Win8来做个范例吧!网络上流传的方法很多,这里以最简单的小白看了也可以的方法来举例.(意思就是把U盘当C盘装系统了,带到任何一款机器上都可以启动直接进入Win8,

Centos 5.8安装KVM虚拟机的过程

KVM虚拟机简介 KVM(Kernel-based Virtual Machine)的简称,是一个开源的全虚拟化的解决方案. 自从Linux2.6.20之后集成在Linux的各个发行版中,KVM虚拟化运行在x86架构且需要硬件(Intel VT or AMD-V)的支持,它使用Linux自身的调度器进行管理,下面是在centos5.8上面详细安装Kvm虚拟机的详细步 骤. 1.查看宿主机的cpu是否支持KVM,vmx表示CPU支持Intel VT技术,svm代表CPU支持AMD-v技术. 2.安

Gentoo安装常见的错误

问题1.安装的上不能查看分区表 (chroot)Gentoo-20121221 / # fdisk -l cannotopen /proc/partitions 解决方法:在livecd上执行命令 mount-t proc none /mnt/gentoo/proc 问题2.安装完以后不能正常引导.grub cannotopen root device "sda7" or unknown-block(0,0): error-6 pleaseappend a correct root b

在Linux系统中安装Go语言的详细教程

  这篇文章主要介绍了在Linux系统中安装Go语言的详细教程,由于国内很多人对谷歌的盲目追捧,导致Go语言在国内的人气远超国外...需要的朋友可以参考下 Go (也叫 "golang")是一款由Google最初开发的编程语言.它自诞生就有几个设计原则:简单性.安全性和速度.Go语言发行版拥有各种调试.测试.调优和代码审查工具.如今Go语言和它的工具链在大多数Linux发行版的基础仓库都可用,用默认的包管理器就可以安装. 在Ubuntu.Debian 或者 Linux Mint上安装G

硬盘安装Win7+win8双系统教程

Windows 8系统core版又称作Win8系统核心版,这个版本适用于台式机和笔记本用户以及普通家庭用户.对普通用户来讲,Windows 8就是最佳选择.包括全新的Windows商店.文件资源管理器(原Windows资源管理器).任务管理器等等,还将包含以前仅在企业版/旗舰版中才提供的功能服务.针对中国等新型市场,微软将提供本地语言版Win8,即Win8中文版.硬盘安装Win7+win8双系统教程具体步骤: 一.工具/原料 win8镜像 win7系统 NTFS分区一个(别的没试过,一般都NTF

Linux系统Gentoo安装Kde5怎么设置

Linux系统Gentoo安装Kde5怎么设置   配置方法: 1.添加kde的overlay: layman -a kde echo -e "-qt5" >> /etc/portage/profile/use.stable.mask 或者在/etc/portage/make.conf的USE中添加qt5. 2.解除kde5的mask 方法一:按官方wiki中的方法做软链接: cd /etc/portage/package.accept_keywords ln -s /va