最近做乙個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、交叉編譯openssla
)建立工作目錄
假設我的工作目錄為
/root/aaron,
# cd /root/aaron
# mkdir openssl-0.9.8k
# cd openssl-0.9.8k
# mkdir compressed install source 其中
compressed
用於存放原始碼包,
install
為軟體安裝目錄,
source
為原始碼包解壓目錄。 b
)獲取原始碼包 從
上獲取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、交叉編譯libxml2a
)建立工作目錄
假設我的工作目錄為
/root/aaron,
# cd /root/aaron
# mkdir libxml2-2.7.3
# cd libxml2-2.7.3
# mkdir compressed install source 其中
compressed
用於存放原始碼包,
install
為軟體安裝目錄,
source
為原始碼包解壓目錄。 b
)獲取原始碼包 從
上獲取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、交叉編譯binda
)建立工作目錄
假設我的工作目錄為
/root/aaron,
# cd /root/aaron
# mkdir bind-9.6.1
# cd bind-9.6.1
# mkdir compressed install source 其中
compressed
用於存放原始碼包,
install
為軟體安裝目錄,
source
為原始碼包解壓目錄。 b
)獲取原始碼包 從
上獲取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
有關的檔案拷貝到目標機的相同目錄下。
這樣,移植工作就基本完成了,接下來就是配置了。這方面網上的文章很多,有空的話我也另開一篇寫寫。
DNS網域名稱服務 BIND (下
檢視bind版本 named v root localhost packages named v bind 9.7.0 p2 redhat 9.7.0 5.p2.el6 dns查詢的過程當客戶端程式要通過乙個主機名稱來訪問網路中的一台主機時,它首先要得到這個主機名稱所對應的ip位址,因為ip資料報中...
DNS服務及BIND基礎應用
dns domain name service,一種重要的網路基礎服務協議,採用c s架構,屬於應用層協議 bind berkerley internet name domain,isc組織負責維護,是dns協議的一種實現,監聽於53 tcp埠,53 udp埠,named是bind程式的執行的服務程...
使用Bind服務配置DNS伺服器
bind是dns伺服器軟體 他的服務名稱是named 主程式 usr sbin named 主配置檔案 etc named.conf 區域配置檔案 etc named.rfc1912.zones yum install y bind vi etc named.conf listen on port ...