在 MacOS 下编译 Skia 以及 Wasm 版本

MacOS

Skia 官网对于如何下载和编译 Skia 有详细的说明,但是对于 macOS 下的编译,有一些细节需要注意。 在开始编译之前,出来要先安装 depot_tools,还用同步 third_party 依赖库,可以通过下面的命令完成:

python3 tools/git-sync-deps

如果不希望依赖系统库,可以通过下面的命令编译 Skia:

bin/gn gen out/Static --args='is_official_build=false target_cpu="arm64" skia_use_system_libjpeg_turbo=false skia_use_system_harfbuzz=false'`

其中 is_official_build=false 表示不是官方编译,target_cpu="arm64" 表示编译为 arm64 架构,skia_use_system_libjpeg_turbo=false 表示不使用系统的 libjpeg-turbo 库,skia_use_system_harfbuzz=false 表示不使用系统的 harfbuzz 库。

Wasm 版本的 CanvasKit

Skia 提供了一个 Wasm 版本的 CanvasKit,可以在浏览器中使用。编译 Wasm 版本的 CanvasKit 需要使用 gn 工具,可以通过下面的命令编译:

cd skia/modules/canvaskit
./compile.sh