码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • window10环境构建和运行skia源码


    skia 是一个开源 2D 图形库,它提供了可跨各种硬件和软件平台工作的通用 API。它用作 Google Chrome 和 Chrome OS、Android、Flutter 和许多其他产品的图形引擎。Skia 由 Google 赞助和管理,但任何人都可以在 BSD 自由软件许可证下使用。虽然核心组件的工程由 Skia 开发团队完成,但我们会考虑来自任何来源的贡献。

    • 准备开发运行环境
      • 下载skia源码和编译脚本包
      • 配置环境
      • 构建vs工程

    准备开发运行环境

    windows10、python3、vs2022或vs2019(安装c/c++开发环境)、git

    如果你装了python2的话,把python3的.exe复制一个重命名为python3.exe

    下载skia源码和编译脚本包

    使用git下载,你也可以用其它方式下载。
    使用git的话记得使用git代理不然下载不了谷歌的代码.不会的自行百度
    
    • 1
    • 2
    # 下载脚本包
    git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
    # 下载skia源码
    git clone https://skia.googlesource.com/skia.git
    
    • 1
    • 2
    • 3
    • 4

    配置环境

    1. depot_tools下载完成后,将depot_tools根目录添加到环境变量paths中。你可以打开cmd测试一下,输入ninja命令看是否能成功,一般失败会提示不是内部命令什么的.保证成功就行

    2. 打开cmd执行python脚本python3 tools/git-sync-deps (如果你只有一个版本python的话,那使用python tools/git-sync-deps)

    3. 将skia/bin目录添加到环境变量paths中.

    4. 打开skia/gn/BUILDCONFIG.gn配置文件

    #将该属配置成你电脑vs安装的vc目录,一般默认在c盘
    win_vc = "C:\Program Files\Microsoft Visual Studio\2022\Community\VC"
    
    • 1
    • 2

    构建vs工程

    上面步骤全完成后,进入skia根目录
    执行完成下面命令后,skia/out/sln目录就是vs项目工程,用vs打开,设置hello world为启动项目,运行(第一次运行生成编译的时间会有点久,大概要10几分钟,不要急),运行成功的话,会显示一个使用skia的c++例子

    gn gen out/sln --ide=vs # 执行后会在skia/out/sln目录生成vs.sln工程
    
    • 1

    运行vs成功后效果图:
    在这里插入图片描述

  • 相关阅读:
    设计模式--策略模式
    Taurus .Net Core 微服务开源框架:Admin 插件【2】 - 系统环境信息管理 - 【OS、Assembly】
    SRAM与DRAM的区别
    Blazor组件自做十一 : File System Access 文件系统访问 组件
    并查集理解与应用(详细版)
    Python数据的标准存储方案
    艾美捷热转移稳定性检测试剂盒:简单、灵敏、均匀的荧光测定法
    使用Scrapy框架集成Selenium实现高效爬虫
    【每日一题】补档 ARC134D - Concatenate Subsequences | 思维 | 简单
    IOTDB的TsFile底层设计
  • 原文地址:https://blog.csdn.net/long5305350/article/details/126450051
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号