Windows环境编译skia库

阅读: 评论:0

skia是个2D向量图形处理函数库,包含字型、坐标转换,以及点阵图都有高效能且简洁的表现。不仅用于Google Chrome浏览器,Android手机平台也采用skia作为绘图处理,搭配OpenGL/ES与特定的硬件特征,强化显示的效果。

一、所需环境

相关环境:
Win10
Git
Python3.10.10
Visual Studio 2022或者LLVM

二、具体步骤

Step1 设置代理

首先打开cmd窗口并设置代理,代码如下所示:

set http_proxy=127.0.0.1:[端口] & set https_proxy=127.0.0.1:[端口]

::我的端口是7890,因此代码如下
set http_proxy=127.0.0.1:7890 & set https_proxy=127.0.0.1:7890
提示:先打开指定的文件夹,然后在地址栏输入 cmd回车,便可以打开对应路径的cmd窗口

Step2 下载depot_tools

在下载skia源码之前,我们需要下载Google的depot_tools用于配置其构建环境,下载完成后请将depot_tools添加到环境变量。本文使用Git下载,当前你也可以手动下载,代码如下:

git clone lesource/chromium/tools/depot_tools.git
如果提示: 'git' 不是内部或外部命令,也不是可运行的程序或批处理文件。
请下载Git工具并添加到环境变量。Git下载地址: git-scm/download/win

下载成功的界面如下:

Step3下载skia源码

这一步耗时可能较长。

git clone lesource/skia.git
你也可以下载指定版本的skia库,代码如下:
git clone -b chrome/m100 lesource/skia.git

最终完成的界面如下:

Step4下载第三方依赖库

我们直接在skia目录下使用python下载第三方依赖库,代码如下:

cd skia
python tools/git-sync-deps
注意:
如果你没有安装Python的话,请安装后再进行上述操作。

第三方库下载完成的界面如下:

Step5 下载ninja

我们直接在skia目录下执行python命令下载ninja,代码如下:

python bin/fetch-ninja

ninja下载完成的界面如下:

到此为止,所有工具已经下载完成,接下来需要安装Visual Studio或者LLVM进行编译skia库。

Step6 安装VS或者LLVM

VS的下载地址为:visualstudio.microsoft/zh-hans/vs/

LLVM的下载地址为:releases.llvm/download.html

Stpe7 构建skia库

这一步将使用gn构建配置文件。可使用默认参数进行构建,也可以使用指定得参数,可用参数如下:

(1)构建参数

构建参数说明:
is_component_build=true:是否生成动态库
is_debug=false:是否生成调试版本
target_cpu="x86":表示win32平台,不指定的话默认是64位
is_official_build=ture:是否只编译skia自身,如果系统没有第三方目录的话建议设置false
win_sdk="":如果windows sdk没有安装到默认路径,需要指定此参数
win_vc+="":如果vs没有安装到默认路径,需要指定此参数,
clang_win="":如果用LLVM编译需要指定此参数
skia_use_icu=false
skia_use_expat=false
skia_use_libwebp_decode=false
skia_use_libwebp_encode=false
skia_use_xps=false
skia_enable_pdf=false
skia_use_libjpeg_turbo_decode = true
skia_use_libjpeg_turbo_encode = true
skia_use_libpng_decode = true
skia_use_libpng_encode = true
skia_use_zlib=true

(2)构建动态库

①生成.ninja构建配置文件

bingn gen outStatic --args=is_official_build=false
如果出现以下错误:
有两种方式可以进行修改:①修改文件的内容;②将Windows Kits/10移动到对应位置即可。

成功后的截图如下:

当然你也可以使用指定得参数进行构建,如下将指定VC及SDK的地址,并构建x86位的动态库。

bingn gen outStatic --args="is_official_build=false is_debug=false win_vc="D:/Software/Program/VS2017/VC" win_sdk="C:/Program Files (x86)/Windows Kits/10" target_cpu="x86""

②根据配置文件进行编译

这一步耗时较长,请耐心等待。

ninja -C outStatic

构建完成后你将在out/Static目录下看到许多的.lib文件,如下:

(2)构建动态库

构建动态库的方式与静态库类似,如下:

bingn gen outShared --args='is_official_build=true is_component_build=true'
ninja -C outShared

(3)构建sln解决方案

bingn gen outsln --ide=vs
ninja -C outsln

本文发布于:2025-03-03 13:24:00,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/1740979446581042.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:环境   Windows   skia
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23