支持信创国产化(09) - - 在国产OS(龙芯)上编译 libSkiaSharp
本文的测试环境:
操作系统:银河麒麟、统信UOS
CPU芯片:龙芯
下面讲述如何在国产OS上编译图形界面库SkiaSharp。
在x64架构的linux系统上克隆Skia源码
git clone https://github.com/mono/skia.git -b v1.68.3
-
克隆depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
-
同步skia依赖项
python tools/git-sync-deps // 进入skia目录执行
-
生成编译skia的CMakeLists脚本
进入skia目录执行:
bin/gn gen cmake --args='
is_official_build=true skia_enable_tools=false
target_os="linux" target_cpu="mips64el"
skia_use_icu=false skia_use_sfntly=false skia_use_piex=true
skia_use_system_expat=false skia_use_system_freetype2=false skia_use_system_libjpeg_turbo=false skia_use_system_libpng=false skia_use_system_libwebp=false skia_use_system_zlib=false
skia_enable_gpu=true
extra_cflags=[ "-DSKIA_C_DLL" ]
linux_soname_version="68.0.0"' --ide=json --json-ide-script=../../gn/gn_to_cmake.py注:之所以要在x64的linux上做这些事情,是因为在龙芯上执行gn时会报错而无法生成CMakeLists脚本。
-
拷贝到国产OS
将整个 skia 文件夹都复制到国产OS(龙芯)的linux系统/home/yyy目录下。
在skia的cmake文件夹中有两个文件需要将里面的skia绝对路径替换为当前系统上的绝对路径 ,分别是CMakeLists.ext和CMakeLists.txt。
-
编译
进入/hone/yyy/skia/cmake目录下,新建一个cm文件夹。
然后进入cm文件夹后打开终端依次输入 cmake .. 和 make即可编译成功,生成的libskiasharp就存储在cmake目录下。
相关文章连接:《支持信创国产化》系列文章目录