Windows 下编译 Aseprite

Aseprite(官网 | GitHub)是一款开源的像素画软件,该软件在 Steam 有售,目前价格为 70 元。但它是开源软件,作者也允许我们自行编译来免费获得这份软件,通过编译得到的软件可用于创作商用作品(https://www.aseprite.org/faq/#can-i-sell-graphics-created-with-aseprite)。

本文介绍在 Windows 11 系统中编译 Aseprite 的流程。受 Aseprite 的 EULA 限制,我不能分享编译好的软件。

本文同样适用于 Windows 10 系统。更早的系统我不敢保证能不能用。

官方编译指南:https://github.com/aseprite/aseprite/blob/main/INSTALL.md

环境准备

Visual Studio

Aseprite 不支持使用 MinGW 编译,必须使用 MSVC 编译器。因此需要安装 Visual Studio。从微软官网下载 Visual Studio 社区版的安装程序:https://visualstudio.microsoft.com/zh-hans/downloads/

在 Visual Studio 安装程序中勾选“使用 C++ 的桌面开发”工作负载。如果希望减少安装体积,可以在右侧取消勾选一些默认选项。必须安装的组件是 VS 核心编辑器、MSVC 和 Windows 11 SDK(见下图)(如果你使用 Win10,那么对应的将是 Windows 10 SDK)

然后安装。不建议修改 Visual Studio 的默认安装位置,后面编译时配置命令会使用这个默认位置。

Ninja

Ninja 是一个轻量的 C/C++ 构建系统。目前在 Windows 11 系统上最简便的安装方法是使用 WinGet:

winget install Ninja-build.Ninja

如果你的系统没有预装 WinGet,那么可能需要到 Ninja 的 GitHub 仓库中下载最新版本然后将它加入 PATH 环境变量。

CMake

https://cmake.org/ 中下载并安装最新版本的 CMake。同样可以通过 WinGet 安装:

winget install -e --id Kitware.CMake

Aseprite 要求编译使用的 CMake 版本不低于 3.16。

获取源代码

获取 aseprite 源码

https://github.com/aseprite/aseprite/releases 中找到最新版本,下载到本地然后解压。你也可以 clone 最新的代码(但这样会导致编译出的软件版本号显示不正常):

git clone --recursive https://github.com/aseprite/aseprite.git

然后将包含代码的 aseprite 文件夹放置到一个空间足够大的地方(需要至少 1.2GB 的空闲空间),在 aseprite 文件夹中新建一个 build 文件夹。

获取预编译的 Skia 库

https://github.com/aseprite/skia/releases 中下载最新的稳定版本(目前是 Skia-m102 版本)的预编译文件,对于 64 位的 Windows 版本,应该下载 Skia-Windows-Release-x64.zip。下载之后解压并重命名为 skia,记下它的路径(本文以 Z:\skia 为例)以备后续使用。

配置和编译

如果你的系统中安装有 MinGW,你可能需要暂时将它从 PATH 变量中删除,或者在下面的 CMake 命令中添加额外的 -DCMAKE_IGNORE_PATH=C:\MinGW\bin 参数,注意替换路径。

打开开始菜单,搜索 “x64 Native Tools Command Prompt for VS 2022” 并启动它。

然后 cd 到 aseprite\build 文件夹中,执行以下命令:

call "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat" -arch=x64

如果你在安装 Visual Studio 时修改了默认的安装位置,那么此处的路径需要针对性地进行调整。

然后执行以下命令来配置项目:

cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DLAF_BACKEND=skia -DSKIA_DIR=Z:\skia -DSKIA_LIBRARY_DIR=Z:\skia\out\Release-x64 -DSKIA_LIBRARY=Z:\skia\out\Release-x64\skia.lib -G Ninja ..

记得将命令中的 Z:\skia 替换为自己存放 Skia 库的位置。等待配置完成。

如果你希望进一步缩减编译出的文件体积,可以尝试将 -DCMAKE_BUILD_TYPE=RelWithDebInfo 替换为 -DCMAKE_BUILD_TYPE=Release 来删除调试信息。我是这样做的,没发现有什么问题。

提示符重新出现后,执行以下命令来启动编译:

ninja aseprite

Aseprite 并不是一个很大的软件。在我的 Ryzen 7 7700 电脑上搭配内存盘,编译仅消耗了不到 1 分钟。主流的电脑应当能够在 10 分钟以内完成编译。

如果你使用笔记本电脑,请确保在编译时接通电源。

提示符重新出现后,你可以在 aseprite\build\bin 文件夹中找到编译好的 .exe 文件。将整个 bin 文件夹拷贝到你常用的位置,就可以正常使用。build 文件夹中其他文件都可以删除。

根据 Aseprite 的 EULA,你可以将这份编译好的软件拷贝到你的任何其他电脑上使用。但你不应该和其他人分享编译好的软件。

汉化和使用

目前这个仓库有针对 1.3 版本的汉化:https://github.com/66six11/Aseprite-Simplified-Chinese

其中还存放有适配了中文字体的像素字体和普通字体的主题。推荐将这些扩展与 aseprite.exe 放置在一起。

你可以在 Aseprite 软件菜单的“编辑-首选项…”菜单中的“扩展”选项卡中安装这些扩展。

祝使用愉快!

posted @   Eslzzyl  阅读(634)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示