问题:
在程序内使用libcurl库访问https的网址时,始终返回 CURLE_UNSUPPORTED_PROTOCOL
经查询发现是libcurl库文件编译时没有选择支持ssl,默认的libcurl库是不支持ssl的
解决办法:
1. 下载libcurl库和openssl库,我用的是 curl-7.37.0.tar.gz 和 openssl-1.0.1g.tar.gz
2. 编译openssl, 编译第一步配置时需要打开共享库,否则curl的配置无法通过, 命令为 ./config enable-shared
3. 检查/usr/local/ssl/lib下是否有.a的库和.so的库,如果缺少.so的库,curl的配置检查无法通过
4. 编译curl, 配置为./configure --with-ssl, 然后make && make insall就OK
其他问题:
我还下载了openssl-1.1.0g.tar.gz的版本,这个默认编译安装路径不是/usr/local/ssl,要注意,我多次编译.a和.so库文件都没有拷贝到/usr/local/ssl下
libcurl的编译帮助官方网址: https://curl.haxx.se/docs/install.html