源码编译Aseprite
Aseprite是一款开源的像素绘画工具,官网下载需要花费几十元购买正版,然而自己源码编译则不需要。我使用的系统版本是Ubuntu 18.04 LTS。
克隆代码
首先从github上克隆源码
git clone --recursive https://github.com/aseprite/aseprite.git
确保能够正常的使用github,不然克隆会失败
如果网络不稳定,在克隆子模块(submodule)时中断,可以使用命令继续
git submodule update --init --recursive
安装依赖库
sudo apt-get install -y g++ cmake ninja-build libx11-dev libxcursor-dev libxi-dev libgl1-mesa-dev libfontconfig1-dev
编译skia
Asprite依赖skia作为图形后端
mkdir $HOME/deps
cd $HOME/deps
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
git clone -b aseprite-m96 https://github.com/aseprite/skia.git
export PATH="${PWD}/depot_tools:${PATH}"
cd skia
python tools/git-sync-deps
gn gen out/Release-x64 --args="is_debug=false is_official_build=true skia_use_system_expat=false skia_use_system_icu=false skia_use_system_libjpeg_turbo=false skia_use_system_libpng=false skia_use_system_libwebp=false skia_use_system_zlib=false skia_use_sfntly=false skia_use_freetype=true skia_use_harfbuzz=true skia_pdf_subset_harfbuzz=true skia_use_system_freetype2=false skia_use_system_harfbuzz=false"
ninja -C out/Release-x64 skia modules
需要能访问googlesource.com,不然这一步很难过去
skia分支名称aseprite-m96对应相应的asprite版本,asprite安装文档中有说明
编译Aseprite
cd aseprite
mkdir build
cd build
cmake \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DLAF_BACKEND=skia \
-DSKIA_DIR=$HOME/deps/skia \
-DSKIA_LIBRARY_DIR=$HOME/deps/skia/out/Release-x64 \
-DSKIA_LIBRARY=$HOME/deps/skia/out/Release-x64/libskia.a \
-G Ninja \
..ninja aseprite
编译好的软件在bin目录下
参考文档
其他平台可以参考官方文档进行编译
https://github.com/aseprite/aseprite/blob/main/INSTALL.md
https://github.com/aseprite/skia#readme