【AV1音视频】Windows下使用CMake静态编译libaom的正确姿势

libaom是AV1编码/解码的一个静态库,由C编写,跨平台支持。VCPKG也把aom集成到自己的ports当中,可以很方便的完成编译。但是VCPKG还是存在以下不足:

  1. 版本不够新。对于libaom这种新库来说,每个版本性能都有非常大的提升以及资源优化改进。vcpkg目前只到了3.5.0,但是官方以及更新到3.6.0版本。
  2. 多target编译兼容不足。

RustDesk是一个跨移动/桌面平台的高性能虚拟化桌面软件,在兼容多个平台的同时,还需要满足arm、arm64下的编译。vcpkg的默认triplet往往不能满足所有平台的成功编译,老版本在部分平台上可能还会有代码问题。

在编译层面本应不是问题,但是集成到RustDesk中,出现了链接错误。

3\xc1\xcb\xb8\xc3\xb7\xfb\xba\xc5\r\nlibscrap-ee1d8b31da778732.rlib(tpl_model.obj) : error LNK2019: \xce\xde\xb7\xa8\xbd\xe2\xce\xf6\xb5\xc4\xcd\xe2\xb2\xbf\xb7\xfb\xba\xc5 __imp_fmax\xa3\xac\xba\xaf\xca\xfd av1_estimate_coeff_entropy \xd6\xd0\xd2\xfd\xd3\xc3\xc1\xcb\xb8\xc3\xb7\xfb\xba\xc5\r\nlibscrap-ee1d8b31da778732.rlib(tx_search.obj) : error LNK2019: \xce\xde\xb7\xa8\xbd\xe2\xce\xf6\xb5\xc4\xcd\xe2\xb2\xbf\xb7\xfb\xba\xc5 __imp_log1pf\xa3\xac\xba\xaf\xca\xfd ml_predict_intra_tx_depth_prune \xd6\xd0\xd2\xfd\xd3\xc3\xc1\xcb\xb8\xc3\xb7\xfb\xba\xc5\r\nlibscrap-ee1d8b31da778732.rlib(partition_strategy.obj) : error LNK2001: \xce\xde\xb7\xa8\xbd\xe2\xce\xf6\xb5\xc4\xcd\xe2\xb2\xbf\xb7\xfb\xba\xc5 __imp_log1pf\r\nC:\\Users\\a1147\\Documents\\projects\\rustdesk\\target\\debug\\deps\\librustdesk.dll : fatal error LNK1120: 5 \xb8\xf6\xce\xde\xb7\xa8\xbd\xe2\xce\xf6\xb5\xc4\xcd\xe2\xb2\xbf\xc3\xfc\xc1\xee\r\n

看上去__imp_log1pf是找不到,我们再细看。

之后找到了解决办法:libaom编译问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值