Fedora20上源码安装Xen4.3.0

Fedora20上源码安装Xen4.3.01.环境介绍

Linux: Fedora 20 X86_64 Xen: Xen 4.3.0

2.安装Fedora

官网上下载镜像,U盘引导,完成安装。 详细问题见:Fedora20系统安装及配置

3.安装所需要的工具包

执行命令时都是在root权限下的。

3.1更新yum# yum update3.2开发包

注: 1. 在执行上面的命令时,xorg-x11-drv-i810-devel和xorg-x11-server-sdk没有,我也没有单独去下,发现后面也不影响。后面编译会要求用到这两个包:(我直接按照教程上装了,不知道不装会不会有影响) 2. 后面安装Xen配置时提示:没有as86。那是是因为在这一步没有安装gcc-c++

3.3 dev86

给出网址:?query=dev86 下载:dev86-0.16.19-3.fc19.x86_64.rpm 安装:

# rpm -ivh dev86-0.16.19-3.fc19.x86_64.rpm3.4 Intel ACPI CA

到主页下载: 下载源代码,解压,并安装:

4.安装Xen 4.3.0

官网下载地址:

4.1编译安装

注: 我的Xen是直接官网下载然后安装的,运行这些命令时几乎没有出现什么问题。有同学拷贝了别人现成的Xen源码,然后安装遇到了一些问题主要是在make环节出现的,下面把有可能遇到的问题贴出来:

1.出现比较多的一个问题是权限不够,这是由于xen-4.3.0是拷贝过来,一些权限发生了变化。例如: 错误:make[3]: execvp: /home/chenchao/xen-4.3.0/tools/include/../../tools/cross-install: 权限不够 解决方法:进入到相应的目录,修改相应文件的权限即可。

2.编译参数不被识别 错误:cc: 错误:unrecognized command line option ‘-combine’ 解决方法:/home/chenchao/xen-4.3.0/tools/firmware/seabios-dir-remote/Makefile中去掉编译参数-combine

3.编译出错 错误:Traceback (most recent call last): File “./tools/layoutrom.py”, line 630, in main() File “./tools/layoutrom.py”, line 607, in main info16 = parseObjDump(infile16, ‘16’) File “./tools/layoutrom.py”, line 538, in parseObjDump relocsection = sectionmap[sectionname] KeyError: ‘.text.asm.out/../src/smp.c.77’ 解决方法:加LC_ALL=C make编译,,上网查到的原因是:语言设置为UTF-8。

4.缺少头文件库 错误:/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory # include < gnu/stubs-32.h> 解决方法:64bit系统编译32bit程序,遇到的问题,终端执行 sudo yum install glibc-devel.i686 sudo yum install libgcc.i686

5.编译命令not find 错误:/bin/sh: line 1: patch: command not found 解决方法:sudo yum install patch.x86_64

6.缺少lib库 错误:glib-2.12 required to compile QEMU 解决方法:sudo yum install glib2-devel.x86_64

7.没有该文件 错误:/tmp/qemu-conf-5475-3115-17647.c:1:17: fatal error: SDL.h: No such file or directory #include < SDL.h> 解决方法:sudo yum install SDL-devel.x86_64

8.ERROR: pixman not present. Your options: (1) Prefered: Install the pixman devel package (any recent distro should have packages as Xorg needs pixman too). (2) Fetch the pixman submodule, using: git submodule update –init pixman libxl_json.h:18:27: fatal error: yajl/yajl_gen.h: No such file or directory #include < yajl/yajl_gen.h> 解决方法:sudo yum install yajl-devel.x86_64

./configure时错误:

No package ‘glib-2.0’ found 解决办法: sudo yum install libgnomeui-devel

4.2添加启动项5.更新Grub

更新Grub,使用Xen来引导,终端执行以下命令:

# grub2-mkconfig -o /boot/grub2/grub.cfg

重启,用Xen引导进入Fedora,进入root权限,验证Xen:

# xm list

一堆错误:

错误: Traceback (most recent call last): File “/usr/local/sbin/xm”, line 5, in from xen.xm import main ImportError: No module named xen.xm

解决办法: # sudo yum install xen-devel.x86_64仍报上述错误 # sudo yum install xen-devel.i686仍报上述错误 # sudo yum install xen.x86_64

这里又报错: Error: Unable to connect to xend: No such file or directory. Is xend running?

执行: # xend start

错误: xc: error: Could not obtain handle on privileged command interface (2 = No such file or directory): Internal error xend/image.py: Error connecting to hypervisor

进入xen根目录下执行: # make clean

错误: FATAL BUILD ERROR:Xen requires at least gcc-4.1

安装gcc:缺少gcc # yum install gcc

再次执行: # make clean # ./configure # make xen tools stubdom

错误: /usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory # include < gnu/stubs-32.h>

解决方法:64bit系统编译32bit程序,遇到的问题,终端执行 # sudo yum install glibc-devel.i686 # sudo yum install libgcc.i686

再次执行:

# make xen tools stubdom# make install-xen install-tools install-stubdom

然后再次添加启动项,其中xen和xendomains提示需要开启相应的服务,按照提示开启就OK了 更新grub 重启,用Xen引导进入Fedora,进入root权限,验证Xen:

# xm list

成功了:

NameID Mem VCPUsState Time(s)Domain-r—– 64.9

人情似纸张张薄,世事如棋局局新。

Fedora20上源码安装Xen4.3.0

相关文章:

你感兴趣的文章:

标签云: