openldap、keepalived源码编译、kerberos源码编译

开始编译前,可以先通过configure --help查看该软件都支持哪些参数,各个参数都有什么作用,如果缺少了必要的参数,编译出来的包可能会缺少某些功能。

编译bdb

编译bdb报错:
1、所执行命令:
../dist/configure --prefix=/opt/test/bdb

错误详情:

configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

原因:缺少编译工具。

解决方法:
安装gcc工具。
如x86下使用yum install -y gcc


继续执行命令:
../dist/configure --prefix=/opt/test/bdb

错误详情:
configure: error: cannot guess build type; you must specify one

解决方法:
需要指定编译环境:
如果是arm环境,需要指定arm-linux;
如果是x86环境,可以不用指定;
我本次是在arm环境编译的,所以需要指定arm-linux。
--build=arm-linux
--host=arm-linux

完整命令:
../dist/configure --prefix=/opt/test/bdb --build=arm-linux --host=arm-linux

2、make && make install
3、将部署目录的文件打包,做成解压可用的绿色版。

编译openldap

openldap的编译依赖于bdb,所以openldap编译前需要先编译好bdb。

1、所执行命令:
./configure --prefix=/home/security/software/openldap --enable-debug --enable-syslog --enable-proctitle --enable-ipv6 --enable-local --enable-modules --enable-bdb --enable-hdb --enable-ldap --enable-mdb --enable-overlays CPPFLAGS=-I/opt/test/bdb/include/ LDFLAGS=-L/opt/test/bdb/lib/ --libdir=/opt/test/bdb/lib/ --includedir=/opt/test/bdb/include/

编译报错,错误详情:
configure: error: could not locate libtool ltdl.h

解决:
安装 libtool-ltdl libtool-ltdl-devel就可以了。
arm环境,可以使用apt源安装;
x86环境,可以使用yum源安装。

其实这种做法是治标不治本的,当一个新环境没有安装libtool-ltdl libtool-ltdl-devel依赖时,则编译后的openldap的包还是会缺相关的依赖:

根本的解决方法是将libtool相关的依赖打到要编译的包里,openldap缺少libltdl.so文件的解决方法:
1)编译libtool源码,把编译后得到的libltdl.so文件拷贝到openldap包的指定目录下;
2)然后设置全局的环境变量export LD_LIBRARY_PATH="/xxx/xxx";
3)或者设置临时环境变量,但是需要在每次执行slapd命令之前都得重新定义一遍:export LD_LIBRARY_PATH="/xxx/xxx";
4)设置了环境变量后,再执行ldd openldap/libexec/slapd就可以正常找到libltdl.so文件了。

2、所执行命令:
./configure --prefix=/home/security/software/openldap --enable-debug --enable-syslog --enable-proctitle --enable-ipv6 --enable-local --enable-modules --enable-bdb --enable-hdb --enable-ldap --enable-mdb --enable-overlays CPPFLAGS=-I/opt/test/bdb/include/ LDFLAGS=-L/opt/test/bdb/lib/ --libdir=/opt/test/bdb/lib/ --includedir=/opt/test/bdb/include/

编译报错,错误详情:
checking for Berkeley DB library and header version match... Berkeley DB version mismatch
header: Berkeley DB 5.3.21: (May 11, 2012)
library: Berkeley DB 5.3.28: (September 9, 2013)
no
configure: error: Berkeley DB version mismatch

解决办法:
export LD_LIBRARY_PATH="/opt/test/bdb/lib"

3、之前编译openldap源码缺少密码策略模块的问题:
原因:缺少编译参数,如上命令configure过程添加--enable-overlays这个参数可以解决。

4、configure操作通过之后,执行命令:
make depend

5、执行:
make && make install

6、编译完成后,将安装目录下的文件全部打包,得到解压可用的绿色版组件包。


keepalived编译

1、./configure --prefix=/opt/xinghai/keepalived
注:本过程缺少参数,导致编译后日志配置不生效;需要加参数,所加参数为:--enable-log-file;
完整命令为:
./configure --prefix=/opt/xinghai/keepalived --enable-log-file
此处执行报错了:
关键错误:
“configure: error: libnfnetlink headers missing”
错误详情:
checking for nl_socket_modify_cb in -lnl... yes
checking for linux/rtnetlink.h... yes
checking libnfnetlink/libnfnetlink.h usability... no
checking libnfnetlink/libnfnetlink.h presence... no
checking for libnfnetlink/libnfnetlink.h... no
configure: error: libnfnetlink headers missing
解决方法:
安装libnfnetlink-devel依赖;
arm环境选择apt源安装;
x86环境选择yum源安装;
如果不想通过源安装,可自行下载rpm包安装。

2、make && make install

3、编译完成后,将安装目录下的文件全部打包,得到解压可用的绿色版组件包。


kerberos源码编译

1、./configure --prefix=/home/security/software/kerberos --enable-dns-for-realm
--enable-dns-for-realm 支持ipv6的解析

2、make && make install

3、编译完成后,将安装目录下的文件全部打包,得到解压可用的绿色版组件包。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,123评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,031评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,723评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,357评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,412评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,760评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,904评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,672评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,118评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,456评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,599评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,264评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,857评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,731评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,956评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,286评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,465评论 2 348

推荐阅读更多精彩内容