您的位置:首页 > 运维架构 > Linux

移植DNS服务bind到MPC8377E开发板

2010-08-26 14:07 232 查看
最近做一个HomeGW的项目,需要将各种常用服务移植到开发板上来,和大家分享一下移植的过程。先写用于DNS的bind。

一、


移植环境


1
、硬件环境:

Host

X86 PC

Target

MPC8377E
开发板

 

2
、软件环境:

Host

Red Hat 4.1.2-12

Linux kernel 2.6.29.1

Target

Linux kernel 2.6.25

 

3
、源码包:

openssl-0.9.8k.tar.gz

libxml2-sources-2.7.3.tar.gz

bind-9.6.1.tar.gz

 

4
、编译工具:

powerpc-linux-gnu-gcc

 

二、


移植步骤


实现
DNS
功能的软件
BIND
有两个依赖库,分别为:
openssl

libxml2
,所以我们首先需要准备好这两个库。

 

1

、交叉编译

openssl


a
)创建工作目录

假设我的工作目录为
/root/Aaron


# cd /root/Aaron

# mkdir openssl-0.9.8k

# cd openssl-0.9.8k

# mkdir compressed install source

其中
compressed
用于存放源码包,
install
为软件安装目录,
source
为源码包解压目录。

b
)获取源码包

http://www.openssl.org/ 上获取
openssl
的最新稳定版本,目前为
0.9.8k


将源码包拷贝到
compressed
目录下,

# cp openssl-0.9.8k.tar.gz /root/Aaron/openssl-0.9.8k/compressed

c
)解压源码包

# cd /root/Aaron/openssl-0.9.8k/compressed

# tar –zxvf openssl-0.9.8k.tar.gz –C ../source

d
)生产
Makefile
文件

# cd ../source/openssl-0.9.8k

# ./Configure –prefix=/root/Aaron/openssl-0.9.8k/install os/compiler:powerpc-linux-gnu-gcc

e
)编译并安装

# make

# make install

 

2

、交叉编译

libxml2


a
)创建工作目录

假设我的工作目录为
/root/Aaron


# cd /root/Aaron

# mkdir libxml2-2.7.3

# cd libxml2-2.7.3

# mkdir compressed install source

其中
compressed
用于存放源码包,
install
为软件安装目录,
source
为源码包解压目录。

b
)获取源码包

http://xmlsoft.org/ 上获取
libxml2
的最新稳定版本,目前为
2.7.3


将源码包拷贝到
compressed
目录下,

# cp libxml2-sources-2.7.3.tar.gz /root/Aaron/ libxml2-2.7.3/compressed

c
)解压源码包

# cd /root/Aaron/ libxml2-2.7.3/compressed

# tar –zxvf libxml2-sources-2.7.3.tar.gz –C ../source

d
)生产
Makefile
文件

# cd ../source/ libxml2-2.7.3

# CC=powerpc-linux-gnu-gcc ./configure –prefix=/root/Aaron/ libxml2-2.7.3/install –host=powerpc-linux-gnu

e
)编译并安装

# make

# make install

 

3

、交叉编译

bind


a
)创建工作目录

假设我的工作目录为
/root/Aaron


# cd /root/Aaron

# mkdir bind-9.6.1

# cd bind-9.6.1

# mkdir compressed install source

其中
compressed
用于存放源码包,
install
为软件安装目录,
source
为源码包解压目录。

b
)获取源码包

https://www.isc.org/ 上获取
bind
的最新稳定版本,目前为
9.6.1


将源码包拷贝到
compressed
目录下,

# cp bind-9.6.1.tar.gz /root/Aaron/ bind-9.6.1/compressed

c
)解压源码包

# cd /root/Aaron/ bind-9.6.1/compressed

# tar –zxvf bind-9.6.1.tar.gz –C ../source

d
)生产
Makefile
文件

# cd ../source/ bind-9.6.1

# CC=powerpc-linux-gnu-gcc  
LDFLAGS=-static BUILD_CC=gcc ./configure –host=powerpc-linux-gnu
–with-openssl=/root/Aaron/openssl-0.9.8k/install –enable-epoll=no
–with-randomdev= --disable-linux-caps
–with-libxml2=/root/Aaron/libxml2-2.7.3/install

e
)编译并安装

# make

# make install

f
)移植


/usr/local/sbin

/usr/local/bin

/usr/local/include

/usr/local/lib

/usr/local/share/man
下新生成的与
bind
有关的文件拷贝到目标机的相同目录下。

 
 
这样,移植工作就基本完成了,接下来就是配置了。这方面网上的文章很多,有空的话我也另开一篇写写。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息