Skia Windows下MSVC 编译记录(和已编译的X86 Skia库)
项目中需要做高性能的2D渲染,从网上找到了强大的Skia,接触Skia后发现国内的Skia相关的资料是真的少(Skia编译、使用),很多Skia资料都是和Android相关。
主要记录在Windows下编译Skia的过程,编译时多多少少踩了一些坑,走了一些弯路,这里把自己正常编译通过的方式记录一下。
Skia 已编译好的X64库
Jetbrains公司帮我们把Skia 很多版本的X64版编译好了(MT 方式 Debug/Release) ,如果项目中使用的是X64并且可使用MT 静态编译,完全不需要单独编译Skia:
注意点开,Windows版在最下边:


如果使用的X64项目不支持MT 静态编译,或者使用的是X86,那就只能自己编译了。
多说一句: Skia 不需要追求最新,因为Skia版本更新很频繁,每次更新API变动也很大,如果使用最新的很容易会导致网上仅剩的资料提供的实例各种API对不上问题。
编译Skia
如果第一次编译Skia请放平心态,Skia的资料很少导致编译时会遇到各种问题,相对编译其他流行库会花费更多时间踩坑。
为了省去各位编译时间和验证这个编译方法是不是适应各个Skia版本,分别尝试编译了m93、m126、m134、canvaskit-0.40.0从旧到目前最新四个版本,成功编译。
编译环境: Windows 10
VS: VS2019
版本: Release
Skia m93(MT): https://wwzo.lanzoue.com/icGUX2xub2la密码:9to0
Skia m93(MD): https://wwzo.lanzoue.com/iYK5T2xudixa密码:31rp
Skia m126(MT): https://wwzo.lanzoue.com/iENKh2xub6ad密码:a22t
Skia m134(MT): https://wwzo.lanzoue.com/iCELP2xub99a密码:envh
Skia canvaskit-0.40.0(MT): https://wwzo.lanzoue.com/iIK5O2xuanqf密码:7asu
每个Skia的库文件在:

编译环境准备:
1. 保证python3在命令行可正常使用
在编译Skia时会调用python脚本(可能是做一些复杂的文件验证、操作动作),目前只在构建脚本里找到copy功能用到了python3???

安装python3后默认文件名是python,把python.exe复制一份改成python3.exe即可:
先where python,找到python 所在目录:
C:\Users\RHY-GMY>where python
C:\Develop\Python3\python.exe
C:\Users\RHY-GMY\AppData\Local\Microsoft\WindowsApps\python.exe
打开对应python目录,python.exe复制粘贴一下,重命名为python3.exe:

最后打开cmd输入python3,类似如下。

2. 下载skia_compile项目
Skia 编译依赖一些第三方库,有些第三方库需要梯子访问到外网下载,好在skia_compile作者已经帮我们整理好了,在这里感谢这位作者,让我们省了很多事🤞
主要在这个项目中拿两个文件(gn.exe、ninja.exe)、一个文件夹(externals):
编译Skia 主要是用ninja.exe编译(类似CMake)。
gn.exe 是Google内部使用的一个构建配置生成工具,这里gn.exe主要生成ninja.exe构建Skia所需要的一切配置文件。
将bin.exe和gn.exe复制放到项目目录下的bin目录下:

像这样:

接着把项目里的唯一的zip包: skia.2025-05-17.src.zip解压,并把skia.2025-05-17.src.zip解压后的third_party/externals文件夹复制到Skia 源码third_party下:

像这样:

3. 修改xmlparse.c
打开刚刚复制externals文件夹下的:

虽然构建项目,修改原有代码可能会有各种麻烦,但是在编译以上版本时,如果不给xmlparse.c添加XML_GE定义会出现XML_GE (for general entities) must be defined, non-empty, either 1 or 0 (0 to disable, 1 to enable; 1 is a common default)错误.
感谢: https://blog.csdn.net/fqbqrr/article/details/134719075 说明了一下:

最后像这样:

开始编译Skia:
1. 生成Ninja需要的构建文件
打开VS2019的本地命令行工具集,并切换到Skia项目目录:

.\bin\gn.exe gen out/msvc.x86.release --ide="vs2019" --sln="skia" --args="target_cpu=\"x86\" is_trivial_abi=false is_official_build=true skia_use_libwebp_encode=false skia_use_libwebp_decode=false skia_use_libpng_encode=false skia_use_libpng_decode=false skia_use_zlib=false skia_use_libjpeg_turbo_encode=false skia_use_libjpeg_turbo_decode=false skia_enable_fontmgr_win_gdi=false skia_use_icu=false skia_use_expat=false skia_use_xps=false skia_enable_pdf=false skia_use_wuffs=false skia_enable_svg=true skia_use_expat=true skia_use_system_expat=false is_debug=false extra_cflags=[\"-DSK_DISABLE_LEGACY_PNG_WRITEBUFFER\",\"/MT\"]"
bin\gn.exe: 从skia_compile项目中拷贝过来的

完成后会在项目下生成out文件夹:

2. 修改toolchain.ninja
如果不修改toolchain.ninja,直接用ninja编译(.\bin\ninja.exe -C out/msvc.x86.release)会报类似的错误:
详细错误
[1/1131] compile ../../src/gpu/MutableTextureState.cpp
FAILED: obj/src/gpu/gpu_shared.MutableTextureState.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/MutableTextureState.cpp /Foobj/src/gpu/gpu_shared.MutableTextureState.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[2/1131] compile ../../src/gpu/DataUtils.cpp
FAILED: obj/src/gpu/gpu_shared.DataUtils.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/DataUtils.cpp /Foobj/src/gpu/gpu_shared.DataUtils.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[3/1131] compile ../../src/gpu/DitherUtils.cpp
FAILED: obj/src/gpu/gpu_shared.DitherUtils.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/DitherUtils.cpp /Foobj/src/gpu/gpu_shared.DitherUtils.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[4/1131] compile ../../src/gpu/RectanizerSkyline.cpp
FAILED: obj/src/gpu/gpu_shared.RectanizerSkyline.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/RectanizerSkyline.cpp /Foobj/src/gpu/gpu_shared.RectanizerSkyline.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[5/1131] compile ../../src/gpu/AtlasTypes.cpp
FAILED: obj/src/gpu/gpu_shared.AtlasTypes.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/AtlasTypes.cpp /Foobj/src/gpu/gpu_shared.AtlasTypes.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[6/1131] compile ../../src/gpu/SkSLToBackend.cpp
FAILED: obj/src/gpu/gpu_shared.SkSLToBackend.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/SkSLToBackend.cpp /Foobj/src/gpu/gpu_shared.SkSLToBackend.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[7/1131] compile ../../src/gpu/ShaderErrorHandler.cpp
FAILED: obj/src/gpu/gpu_shared.ShaderErrorHandler.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/ShaderErrorHandler.cpp /Foobj/src/gpu/gpu_shared.ShaderErrorHandler.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[8/1131] compile ../../src/gpu/ResourceKey.cpp
FAILED: obj/src/gpu/gpu_shared.ResourceKey.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/ResourceKey.cpp /Foobj/src/gpu/gpu_shared.ResourceKey.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[9/1131] compile ../../src/text/gpu/DistanceFieldAdjustTable.cpp
FAILED: obj/src/text/gpu/gpu_shared.DistanceFieldAdjustTable.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/text/gpu/DistanceFieldAdjustTable.cpp /Foobj/src/text/gpu/gpu_shared.DistanceFieldAdjustTable.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[10/1131] compile ../../src/gpu/RectanizerPow2.cpp
FAILED: obj/src/gpu/gpu_shared.RectanizerPow2.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/RectanizerPow2.cpp /Foobj/src/gpu/gpu_shared.RectanizerPow2.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[11/1131] compile ../../src/gpu/SkBackingFit.cpp
FAILED: obj/src/gpu/gpu_shared.SkBackingFit.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/SkBackingFit.cpp /Foobj/src/gpu/gpu_shared.SkBackingFit.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[12/1131] compile ../../src/gpu/Swizzle.cpp
FAILED: obj/src/gpu/gpu_shared.Swizzle.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/Swizzle.cpp /Foobj/src/gpu/gpu_shared.Swizzle.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[13/1131] compile ../../src/text/gpu/GlyphVector.cpp
FAILED: obj/src/text/gpu/gpu_shared.GlyphVector.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/text/gpu/GlyphVector.cpp /Foobj/src/text/gpu/gpu_shared.GlyphVector.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[14/1131] compile ../../src/gpu/BlendFormula.cpp
FAILED: obj/src/gpu/gpu_shared.BlendFormula.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/BlendFormula.cpp /Foobj/src/gpu/gpu_shared.BlendFormula.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[15/1131] compile ../../src/text/gpu/SDFMaskFilter.cpp
FAILED: obj/src/text/gpu/gpu_shared.SDFMaskFilter.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/text/gpu/SDFMaskFilter.cpp /Foobj/src/text/gpu/gpu_shared.SDFMaskFilter.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[16/1131] compile ../../src/gpu/TiledTextureUtils.cpp
FAILED: obj/src/gpu/gpu_shared.TiledTextureUtils.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/TiledTextureUtils.cpp /Foobj/src/gpu/gpu_shared.TiledTextureUtils.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[17/1131] compile ../../src/text/gpu/SkChromeRemoteGlyphCache.cpp
FAILED: obj/src/text/gpu/gpu_shared.SkChromeRemoteGlyphCache.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/text/gpu/SkChromeRemoteGlyphCache.cpp /Foobj/src/text/gpu/gpu_shared.SkChromeRemoteGlyphCache.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[18/1131] compile ../../src/gpu/Blend.cpp
FAILED: obj/src/gpu/gpu_shared.Blend.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/Blend.cpp /Foobj/src/gpu/gpu_shared.Blend.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[19/1131] compile ../../src/gpu/BlurUtils.cpp
FAILED: obj/src/gpu/gpu_shared.BlurUtils.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/BlurUtils.cpp /Foobj/src/gpu/gpu_shared.BlurUtils.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[20/1131] compile ../../src/gpu/tessellate/FixedCountBufferUtils.cpp
FAILED: obj/src/gpu/tessellate/gpu_shared.FixedCountBufferUtils.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/tessellate/FixedCountBufferUtils.cpp /Foobj/src/gpu/tessellate/gpu_shared.FixedCountBufferUtils.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[21/1131] compile ../../src/gpu/tessellate/Tessellation.cpp
FAILED: obj/src/gpu/tessellate/gpu_shared.Tessellation.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/gpu/tessellate/Tessellation.cpp /Foobj/src/gpu/tessellate/gpu_shared.Tessellation.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[22/1131] compile ../../src/text/gpu/Slug.cpp
FAILED: obj/src/text/gpu/gpu_shared.Slug.obj
cmd.exe /c C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86 && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe" /nologo /showIncludes /FC -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DNDEBUG -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_DISABLE_TRACING -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_AVX512_OPTS -DSKIA_IMPLEMENTATION=1 "-IC:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/include" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um" "-IC:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt" -I../.. /wd5030 /wd5051 /bigobj /utf-8 /O2 /Zc:inline -DSK_DISABLE_LEGACY_PNG_WRITEBUFFER /MD /std:c++17 /Zc:lambda /GR- /c ../../src/text/gpu/Slug.cpp /Foobj/src/text/gpu/gpu_shared.Slug.obj /Fd"obj/gpu_shared_c.pdb"
'C:/Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
ninja: build stopped: subcommand failed.
这个错误目前没在网上看到,但是我在编译时确确实实碰到了。
总体来说主要是命令行使用问题和C:/Program Files (x86)/Windows Kits/10/bin/下的SetEnv.cmd没有找到问题。
我尝试去掉C:/Program Files (x86)/Windows Kits/10/bin/SetEnv.cmd /x86这句调用,发现也可以正常编译,正常使用,没发现什么问题,猜测这句主要是设置环境变量和设置编译目标x86位数,因为在后续调用cl.exe时也会选择对应位数(x86)下的cl.exe文件,所以这句可以去掉。
打开out\msvc.x86.release\toolchain.ninja,把6处红框部分去掉:


像这样:

(可选)删除/showIncludes选项
如果不去掉/showIncludes ,编译时会出现大量的,不删除也不会对编译有任何问题。

去掉这两处即可:

3. 开始编译
回到项目根目录下,执行:
.\bin\ninja.exe -C out/msvc.x86.release

希望各位也可以像这样,编译成功:

如果没有showIncludes 就会在编译过程中输出比较干净:


4. Skia 库目录
编译成功的Skia库在刚刚生成的Ninja构建文件下:

5.编译其他版本Skia库
参考skia_compile作者项目的Windows下编译skia.md部分,主要是针对gn.exe和ninja.exe这两个工具参数不一样:

如果想修改多线程运行库MT/MD/MTd/MDd,修改gn.exe最后一个参数:

最后这是针对这篇随笔编译的m138版本:
https://wwzo.lanzoue.com/iucJE2xuswja 密码:evyy
参考:
https://github.com/rhett-lee/skia_compile/tree/main
https://blog.csdn.net/fqbqrr/article/details/134719075
浙公网安备 33010602011771号