You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译google/woff2时出现“libbrotli needed”错误如何解决

编译woff2关联本地brotli的解决方案

以下两种方案均可解决libbrotli needed报错问题,操作前先确认你已编译完成的brotli目录下存在libbrotlicommon.so、libbrotlidec.so、libbrotlienc.so三个动态库文件,以及对应的brotli头文件目录(通常为编译目录下的include文件夹),下文中所有<YOUR_BROTLI_BUILD_PATH>替换为你自己的brotli编译目录的绝对路径即可。


方案1:修改woff2的CMakeLists.txt直接引入本地brotli

  • 打开woff2根目录下的CMakeLists.txt,在文件最开头添加如下配置:
set(BROTLI_INCLUDE_DIR "<YOUR_BROTLI_BUILD_PATH>/include")
set(BROTLI_LIBRARIES 
    "<YOUR_BROTLI_BUILD_PATH>/libbrotlicommon.so"
    "<YOUR_BROTLI_BUILD_PATH>/libbrotlidec.so"
    "<YOUR_BROTLI_BUILD_PATH>/libbrotlienc.so"
)
include_directories(${BROTLI_INCLUDE_DIR})
  • 保存文件后,在woff2目录执行编译命令:
mkdir -p build && cd build
cmake ..
make -j$(nproc)

编译完成后生成的woff2相关二进制文件会存储在build目录下。


方案2:无需修改配置,编译时直接传入brotli路径

如果不想改动woff2的原生配置文件,可以在执行cmake命令时直接指定brotli的相关路径:

  • 进入woff2根目录后执行如下命令:
mkdir -p build && cd build
cmake .. \
-DBROTLI_INCLUDE_DIR=<YOUR_BROTLI_BUILD_PATH>/include \
-DBROTLI_LIBRARY_COMMON=<YOUR_BROTLI_BUILD_PATH>/libbrotlicommon.so \
-DBROTLI_LIBRARY_DEC=<YOUR_BROTLI_BUILD_PATH>/libbrotlidec.so \
-DBROTLI_LIBRARY_ENC=<YOUR_BROTLI_BUILD_PATH>/libbrotlienc.so
make -j$(nproc)

运行时找不到brotli库的修复方法

如果编译完成后运行woff2工具提示找不到brotli动态库,执行以下命令临时生效:

export LD_LIBRARY_PATH=<YOUR_BROTLI_BUILD_PATH>:$LD_LIBRARY_PATH

需要永久生效的话,将上述命令添加到你的~/.bashrc(或~/.zshrc,对应你使用的shell)文件中,再执行source ~/.bashrc即可。


内容的提问来源于stack exchange,提问作者Porush Manjhi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 16:57:01