一、libevent下载
官方网站:http://libevent.org/
下载最新版本: libevent-2.1.12-stable.tar.gz
二、libevent安装
如下图所示,由于安装过程中会报:configure: error: openssl is a must but can not be found. You should add the directory containing `openssl.pc' to the `PKG_CONFIG_PATH' environment variable, or set `CFLAGS' and `LDFLAGS' directly for openssl, or use `--disable-openssl' to disable support for openssl encryption。
说明安装的libevent库依赖openssl库, 因此在安装libevent之前要安装openssl库
1.下载安装openssl库
- 到官网下载openssl,此处选择的openssl-1.1.1o.tar.gz, 官网地址:https://www.openssl.org/source/old/
- 将下载的文件移动到主目录下:
将username替换为自己的用户名
mv openssl-1.1.1o.tar.gz /home/username
- 到移动后的目录下打开终端,解压文件,并修改解压后的文件夹的名字
tar -zxvf openssl-1.1.1o.tar.gz
mv openssl-1.1.1o openssl
- 切换到解压目录下
cd openssl
- 创建安装目录:
sudo mkdir /usr/local/openssl
- 指定安装目录
./config --prefix=/usr/local/openssl
- 进行编译
sudo make
- 进行安装
sudo make install
- 安装完成后,编辑环境变量
# 进入文件/etc/profile
sudo vi /etc/profile
# 在文件最后加上如下代码
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/openssl/include
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/openssl/include
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/openssl/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openssl/lib
然后我们查看openssl的信息:
可以看到,输入openssl指令后,下面执行的可执行程序为1.1.1,这是Ubuntu系统原先自带的openssl库,这个库是没有头文件与库文件的,开发人员进行相关开发的时候是没办法使用的,但是通过安装openssl库,我们在日后的开发中就可以调用了。安装完成后,可执行程序依然是旧版,但是其内部调用的库是刚安装的显示的这个2022年的
2.安装libevent
- 将下载的libevent-2.1.12-stable.tar.gz安装包上传到主目录下:
mv libevent-2.1.12-stable.tar.gz /home/username
- 解压安装包
tar -zxvf libevent-2.1.12-stable.tar.gz
- 创建文件夹, 用于指定libevent的安装目录
sudo mkdir /usr/lib/libevent
- 进入libevent-2.1.8文件夹
cd libevent-2.1.12-stable/
- 配置文件:
./configure -prefix=/usr/lib/libevent
- 编译
make
7.安装到系统的指定目录
sudo make install //不是root权限必须sudo
安装完成后,察看/usr/lib/libevent目录下面是否生成相应的文件
可以拿hello-world程序用来测试。
服务端:
./hello-world
客户端:
netcat 127.0.0.1 9995
连接成功后,服务端显示:
客户端接收到服务端发送的消息:hello world
三、参考
Ubuntu安装openssl: link
Linux(ubuntu)安装libevent: link