ffmpeg 开启https, 提示“ERROR: openssl not found”

2019-07-20 21:30:14

ffmpeg 可以使用libssl.so libcrypto.so动态库, 或者使用libssl.a libcrypto.a静态库, 接下来是说明明库存在,但是编译还是提示找不到openssl。

搜索ffmpeg源码,可以发现是在configure文件里打印的该提示。 源码如下:

enabled openssl           && { use_pkg_config openssl openssl/ssl.h OPENSSL_init_ssl ||
                               check_lib openssl/ssl.h OPENSSL_init_ssl -lssl -lcrypto ||
                               use_pkg_config openssl openssl/ssl.h SSL_library_init ||
                               check_lib openssl/ssl.h SSL_library_init -lssl -lcrypto ||
                               check_lib openssl/ssl.h SSL_library_init -lssl32 -leay32 ||
                               check_lib openssl/ssl.h SSL_library_init -lssl -lcrypto -lws2_32 -lgdi32 ||
                               die "ERROR: openssl not found"; }

可以发现ffmpeg在一个一个的尝试openssl,我的config.log里就显示已经检查到了最后一个,但是还是没有找到openssl。

原因是我用的openssl库比较新,老的openssl库使用‘SSL_library_init’初始化, 新版本openssl使用‘OPENSSL_init_ssl’初始化,又因为没有检查通过,所以这里就报这个错误了。 解决方法是增加一行检查‘check_lib openssl/ssl.h OPENSSL_init_ssl -lssl -lcrypto ’ 即可通过,上文是我已经增加过的。

你可能感兴趣的:(ssl,网络协议,网络)