如何编译opusfile或opustools?解决opusfile-0.12编译链接报错问题
opusfile-0.12 make编译报错解决方案
错误根因
报错中所有未定义的引用函数均为OpenSSL 1.1.0及以上版本新增的API,问题出在当前系统安装的OpenSSL版本低于1.1.0,或者编译时opusfile未正确检测到符合版本要求的OpenSSL开发库。
可选解决方法
- 方法1:升级系统OpenSSL到符合要求的版本
以CentOS 7为例,可直接安装官方维护的openssl11系列包:
安装完成后重新执行configure,指定新版OpenSSL的pkgconfig路径,再编译即可:yum install -y openssl11 openssl11-devel./configure PKG_CONFIG_PATH=/usr/lib64/openssl11/pkgconfig make - 方法2:禁用opusfile的HTTP/HTTPS支持
如果你不需要使用opusfile读取网络音频流的功能,可以在编译配置阶段直接禁用HTTP模块,跳过OpenSSL依赖:./configure --disable-http make - 方法3:指定自定义编译的OpenSSL路径
如果你已经自行编译安装了新版OpenSSL到自定义路径(如/opt/openssl),可在configure时手动指定头文件和库路径:./configure CPPFLAGS="-I/opt/openssl/include" LDFLAGS="-L/opt/openssl/lib -Wl,-rpath=/opt/openssl/lib" make
内容的提问来源于stack exchange,提问作者xpongz
相关产品推荐
相关产品推荐

