在RHEL 5.6安装OSSEC v3.7.0时遇pcre2.h缺失错误求助
问题解决步骤
关于pcre.h的说明
你下载的是PCRE2 v10.37,它的头文件是pcre2.h,而非旧版PCRE的pcre.h,所以压缩包里确实没有pcre.h,编译错误的核心原因是OSSEC找不到系统中的pcre2.h文件。
解决办法
1. 先单独编译安装PCRE2到系统
PCRE2_SYSTEM=yes参数是告诉OSSEC使用系统已安装的PCRE2库,而非自带版本,所以需要先把PCRE2安装到系统中:
# 解压PCRE2包 tar -zxvf pcre2-10.37.tar.gz cd pcre2-10.37 # 配置编译选项(适配RHEL5.6的旧gcc版本) ./configure --prefix=/usr --enable-utf8 --enable-unicode-properties # 编译并安装 make && sudo make install # 刷新系统库缓存 sudo ldconfig
2. 重新安装OSSEC
回到OSSEC目录,重新执行安装脚本:
sudo PCRE2_SYSTEM=yes ./install.sh
额外注意事项
- 确保RHEL5.6已安装基础编译工具,若未安装可执行:
sudo yum install gcc make - 若仍有问题,可手动指定PCRE2的路径参数:
sudo PCRE2_SYSTEM=yes CPPFLAGS="-I/usr/include" LDFLAGS="-L/usr/lib" ./install.sh
内容的提问来源于stack exchange,提问作者Evi
相关产品推荐
相关产品推荐

