首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

在ARM Linux上成功实现添加DNS库

在ARM Linux上成功实现添加DNS库

工作需要要在嵌入Linux上实现DNS, 从Delphi的Indy9中移植了一个DNS,用了半年了还可以。
今日偶然看到了网上有源码(竟然原来没有搜到ftp://ftp.isc.org/isc/bind9/9.5.0/bind-9.5.0.tar.gz
1. 找到bind-9.5.0.tar.gz源码,其中有包含DNS协议的源码,./configure --prefix=/home/hxs/lib --host=arm-linux,编译提示
checking for struct lifconf... no
checking if unistd.h or sys/types.h defines fd_set... yes
checking whether byte ordering is bigendian... no
checking for OpenSSL library... using OpenSSL from /usr/lib and /usr/include
checking whether linking with OpenSSL works... assuming it does work on target platform
checking whether linking with OpenSSL requires -ldl... unknown
configure: error: OpenSSL has unsupported dynamic loading
原来还需要OpenSSL支持。
2. 下载openssl http://www.openssl.org/ 我下载的是i版
./config no-asm --prefix=/home/hxs/lib #去掉asm
修改Makefile, 把其中的gcc改成arm-linux-gcc
make; make install
可以看到
drwxr-xr-x 2 hxs users 4096 09-28 16:35 engines
-rw-r--r-- 1 hxs users 2307146 09-28 16:35 libcrypto.a
-rw-r--r-- 1 hxs users 384152 09-28 16:35 libssl.a
drwxr-xr-x 2 hxs users 4096 09-28 10:48 pkgconfig
3.继续编译dns包
./configure --prefix=/home/hxs/lib --with-openssl=/home/hxs/lib host=arm-linux-gcc
make; make install
那么库中多了几个
libisc.a libisccfg.a libssl.a libbind9.a libdns.a libisccc.a liblwres.a
测试一下,可以用,但是都是静态库很讨厌,把Makefile中的ar改成arm-linux-ar,动态库就编译出来了,没有测试,感觉应该没有问题吧。
继承事业,薪火相传
返回列表