当前位置: 首页 > article >正文

CentOS 6.5编译Rsyslog 8.1903.0

个人博客地址:CentOS 6.5编译Rsyslog 8.1903.0 | 一张假钞的真实世界

个人很早之前的博文,迁移至此作为历史记录。

源码下载参考我的另外一片博文:CentOS 7.3 编译 Rsyslog 8.1903.0。

本篇博文从创建构建环境开始填坑/(ㄒoㄒ)/~~。通过上一篇博文可以解决的问题此处不再赘述。

执行配置时出现以下错误:

# ./configure --enable-omhttp
configure: error: cannot find install-sh or install.sh in "." "./.." "./../.."

先执行autogen.sh出现以下错误:

# sh autogen.sh
checking for LIBESTR... configure: error: Package requirements (libestr >= 0.1.9) were not met:
No package 'libestr' found

检查没有安装libestr库,所以重新安装:

# yum install libestr libestr-devel

再次执行autogen.sh问题依旧o(╯□╰)o。需要编译安装libestr。

# wget https://libestr.adiscon.com/files/download/libestr-0.1.9.tar.gz
# tar xzvf libestr-0.1.9.tar.gz
# ./configure CC="gcc -m64" --prefix=/usr --libdir=/usr/lib64
# make
# make install

安装完成后重新执行autogen.sh问题解决。

问题逐一解决后执行自动配置成功:

# autoreconf -fvi

执行配置:

# ./configure --enable-omhttp

配置过程中出现以下错误信息:

make[3]: Entering directory `/data/kafka/rsyslog-8.1903.0/grammar'
  LEX    lexer.c
make[3]: *** [lexer.c] 错误 1
make[3]: Leaving directory `/data/kafka/rsyslog-8.1903.0/grammar'
make[2]: *** [all] 错误 2
make[2]: Leaving directory `/data/kafka/rsyslog-8.1903.0/grammar'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/data/kafka/rsyslog-8.1903.0'
make: *** [all] 错误 2

安装flex:

yum install flex

安装后执行autogen.sh,再次执行configure,然后执行make成功。进入omhttp目录执行make出现以下错误:

# cd contrib/omhttp
# make
  CC     omhttp_la-omhttp.lo
omhttp.c: 在函数‘curlPostSetup’中:
omhttp.c:1554: 错误:‘CURLOPT_TCP_KEEPALIVE’未声明(在此函数内第一次使用)
omhttp.c:1554: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
omhttp.c:1554: 错误:所在的函数内也只报告一次。)
omhttp.c:1554: 警告:在‘_curl_opt’的声明中,类型默认为‘int’
omhttp.c:1558: 错误:‘CURLOPT_TCP_KEEPIDLE’未声明(在此函数内第一次使用)
omhttp.c:1558: 警告:在‘_curl_opt’的声明中,类型默认为‘int’
omhttp.c:1562: 错误:‘CURLOPT_TCP_KEEPINTVL’未声明(在此函数内第一次使用)
omhttp.c:1562: 警告:在‘_curl_opt’的声明中,类型默认为‘int’
make: *** [omhttp_la-omhttp.lo] 错误 1

经过Google后发现CURLOPT_TCP_KEEPALIVE是在libcurl 7.25.0之后才定义的。使用以下命令检查系统当前libcurl版本:

# rpm -q libcurl
    
libcurl-7.19.7-52.el6.x86_64

所以需要升级curl版本,参考:https://www.jianshu.com/p/14f5f145453e。升级完成后创建以下软连接:

# ln -s /usr/local/curl/include/curl/ /usr/include/curl

再次执行编译omhttp,出现以下错误:

make[2]: Entering directory `/data/kafka/rsyslog-8.1903.0/contrib/omhttp'
  CC     omhttp_la-omhttp.lo
omhttp.c: 在函数‘checkConn’中:
omhttp.c:470: 警告:此函数中的‘healthUrl’在使用前可能未初始化
  CCLD   omhttp.la
/usr/bin/ld: cannot find -lcurl
collect2: ld returned 1 exit status
make[2]: *** [omhttp.la] 错误 1
make[2]: Leaving directory `/data/kafka/rsyslog-8.1903.0/contrib/omhttp'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/data/kafka/rsyslog-8.1903.0'
make: *** [all] 错误 2

创建以下软连接:

cd /lib64
# ln -s /usr/local/curl/lib/libcurl.so.4.5.0 libcurl.so
# ln -s /usr/local/curl/lib/libcurl.so.4.5.0 libcurl.so.4

再次编译omhttp成功!!终于大功告成O(∩_∩)O哈哈~


http://www.kler.cn/a/535035.html

相关文章:

  • Javascript 日期计算如何实现当前日期加一天或者减去一天
  • 蓝桥杯思维训练营(三)
  • oracle 基础语法复习记录
  • 基于PLC的电热水器的水箱水位控制系统(论文+源码
  • Android 使用ExpandableListView时,需要注意哪些细节
  • 【大模型理论篇】DeepSeek-R1:引入冷启动的强化学习
  • web3.0技术
  • 计算机组成与接口
  • 天童教育:帮助孩子建立稳定的自信心
  • 如何从0开始做自动化测试?
  • 深度学习系列--03.激活函数
  • Three.js实现炫酷图片粒子化效果:从聚合到扩散的动态演变
  • SystemVerilog系统函数之$system详细使用指南与举例
  • DeepSeek核心关键技术 (冷启动,拒绝采样,蒸馏,多头潜注意力,MoE等) 解读
  • 【Axure高保真原型】中继器表格控制动态面板
  • 不含101的数
  • 微信小程序~django Petting pets(爱抚宠物)小程序
  • 机器学习-线性回归(参数估计之结构风险最小化)
  • JavaScript系列(62)--实时通信系统实现详解
  • 使用page assist浏览器插件结合deepseek-r1 7b本地模型
  • 支持 APQP (先期产品质量策划) 的软件系统-汽车电子行业专用研发管理信息化平台
  • ‌双非硕士的抉择:自学嵌入式硬件开发还是深入Linux C/C++走软开?
  • mongodb 使用内存过大分析
  • 文档解析技术:如何高效提取PDF扫描件中的文字与表格信息?
  • 流浪地球发动机启动问题解析与实现
  • 2.DM Manager客户端