CentOS 6.9编译Telegram-CLI时configure提示libevent未找到(已yum安装)
解决CentOS 6.9下编译Telegram-CLI时configure提示libevent未找到的问题
我之前也碰到过CentOS 6.x环境下编译Telegram-CLI的类似依赖问题,结合你描述的情况,给你几个针对性的排查和解决步骤:
1. 先确认libevent的实际安装状态与版本
CentOS 6.9的官方yum源里默认提供的libevent-devel版本是1.4.x,而Telegram-CLI的源码对libevent的版本要求通常是2.x以上,这大概率是configure检测失败的核心原因。
先检查已安装的libevent包:
rpm -qa | grep libevent
如果输出里只有libevent-1.4.13-4.el6这类低版本包,那肯定需要升级。
2. 手动编译安装新版libevent
手动安装2.x版本的libevent是最直接的解决方法:
- 下载libevent的最新稳定版源码包(建议选2.1.x系列)
- 解压并编译安装:
tar zxf libevent-2.1.12-stable.tar.gz cd libevent-2.1.12-stable ./configure --prefix=/usr/local # 指定安装到系统本地目录 make && make install
- 更新系统库缓存,让系统能识别新安装的libevent:
echo "/usr/local/lib" >> /etc/ld.so.conf.d/local.conf ldconfig
3. 让configure找到新版libevent
安装完新版libevent后,需要明确告诉configure去哪里找这个库,有两种方式:
- 方式一:通过
PKG_CONFIG_PATH指定配置文件路径:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
- 方式二:直接通过configure参数指定libevent的安装目录:
./configure --with-libevent=/usr/local
4. 检查Git子模块是否完整
虽然你用了git clone --recursive,但网络波动可能导致子模块拉取不完整,这也可能引发依赖检测异常,重新拉取子模块试试:
cd tg git submodule update --init --recursive
补充:其他可能的依赖问题
CentOS 6.9的openssl版本也偏旧(默认是1.0.1e),如果后续编译还遇到openssl相关的错误,可以考虑手动升级openssl到1.1.x版本,步骤和安装libevent类似。
附你提供的configure输出片段:
checking for gcc... gcc
checking whether the C compiler works... yes
checking f...
内容的提问来源于stack exchange,提问作者erfannf2
相关产品推荐
相关产品推荐

