记录linux编译curl库且启用sftp的依赖
记录linux编译curl库且启用sftp的依赖
·
记录linux编译curl库且启用sftp的依赖
curl库支持sftp,但是编译此库时默认是不开启的,需要libssh2与libssl库依赖,但是需要对应好各个lib的版本,在此记录下编译成功的各个版本依赖。
- libssl库是openssl,版本号为1.0.2.t,下载链接地址为:https://www.openssl.org/source/old/1.0.2/openssl-1.0.2t.tar.gz
- libssh2库,版本号为1.8.1,下载地址为:https://www.libssh2.org/download/libssh2-1.8.1.tar.gz
- curl库,版本号为7.72.0,下载地址为:https://curl.se/download/curl-7.72.0.tar.gz
首先编译libssl,也就是openssl,因为libssh2和curl都依赖这个库,解压openssl-1.0.2t.tar.gz,进入解压文件夹,执行
./config shared
# 要生成动态链接库,不然libssh2的链接会出错,报-fplc错误
make
make install
生成文件,都在/usr/local/ssl下,头文件目录:/usr/local/ssl/include,库文件目录:/usr/local/ssl/lib。
其次,编译libssh2,同样解压缩,进入解压缩目录,执行,
./configure --with-libssl-prefix=/usr/local/ssl
make
make install
最后,编译curl库,解压,进入文件夹,执行
./configure --with-libssh2=/usr/local --with-ssl=/usr/local/ssl
make
make install
编译完成的curl程序在/usr/bin中,运行时可能会出现这个错误
这是编译好的curl程序链接不到动态库的原因,这个动态库在/usr/local/lib目录下,执行,
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
可以使用
C项目里引用需要的库文件就好。
更多推荐
已为社区贡献1条内容
所有评论(0)