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

编译webkit-gtk 2.30.4时遇libfreetype库查找失败问题求助

交叉编译WebKit-GTK 2.30.4时Freetype库找不到的原因

操作场景

执行的CMake交叉编译命令:

cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DPORT=GTK -DCMAKE_CXX_COMPILER=/usr/bin/arm-linux-gnueabihf-g++-10 -DCMAKE_C_COMPILER=/usr/bin/arm-linux-gnueabihf-gcc-10

报错信息

CMake Error at /usr/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find Freetype (missing: FREETYPE_LIBRARY) (found suitable version
"2.13.2", minimum required is "2.4.2")
Call Stack (most recent call first):
/usr/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.28/Modules/FindFreetype.cmake:162 (find_package_handle_standard_args)
Source/cmake/WebKitFindPackage.cmake:104 (_find_package)
Source/cmake/OptionsGTK.cmake:38 (find_package)
Source/cmake/WebKitCommon.cmake:58 (include)
CMakeLists.txt:173 (include)

已尝试操作

  • 已安装系统自带的libfreetype-dev和libfreetype6(随libcairo2依赖安装)
  • 尝试卸载libfreetype-dev后,因libcairo2依赖限制,不得不重新安装

核心原因

  • 架构不匹配:你用的是ARM交叉编译器,但当前安装的libfreetype-dev/libfreetype6是主机x86架构的库,CMake找不到适配ARM架构的库文件,因此报missing: FREETYPE_LIBRARY。
  • 交叉编译搜索路径未指定:CMake默认搜索系统标准路径(如/usr/lib、/usr/include),这些路径下只有x86版本的Freetype库,没有ARM版本的库文件,无法满足交叉编译需求。
  • 主机依赖锁死x86版本库:libcairo2是主机系统的必备依赖,它依赖x86版本的Freetype库,所以你无法卸载该版本,这也说明主机的Freetype库完全不适用于你的ARM交叉编译场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 11:01:02