如果你有兴趣一同参与 AtomUI
的开发与推进,需要在你的设备上搭建一套基础环境,下文将具体说明 Windows/Linux
平台上需要的基础配置。
前置准备
AtomUI
支持 Visual Studio
、Rider
和 Visual Studio Code
。但是如果您是进行跨平台软件的研发,推荐使用 Rider
和 Visual Studio Code
。
.NET 版本
AtomUI 目前将最低的版本提升到 .NET 8
,目前滚动的版本支持为 .NET 8
和 .NET 9
,请确认您机器上的 .NET SDK
版本信息。Windows/Mac/Linux
均可以通过下面的命令来确认 .NET
版本。
dotnet --version
AtomUI 与 Avalonia 版本说明
目前 AtomUI
正在属于快速开发迭代阶段,所以每次小版本发布我们大概率会锚定 Avalonia
已经发布的最新的版本。目前 Avalonia
也没有发布长期支持版,所以这种策略是可以接受的。
比如 AtomUI 0.0.6-build.1 就锚定了 Avalonia 11.3.2 版本
Important
因为 AtomUI
是基于 Avalonia
的深度定制,所以 AtomUI
跟 Avalonia
版本是一个强绑定,您在开发的时候需要主要,这样强绑定的好处可以用
Avalonia
的内部接口和类,不足之处就是 AtomUI
无法同时多个版本,会导致使用 AtomUI
做开发的项目也会形成对 Avalonia
特定版本的绑定。
但是这个情况其实影响不大,因为 Avalonia
编成接口还是比较稳定,不同版本间只需要重新编译即可,一般不会涉及接口的调整。
Windows系统
优先推荐 Windows 11
,如果是 Windows 10
理论上也没有任何问题。
1、安装最新版 PowerShell
:打开链接 https://aka.ms/powershell-release?tag=stable ,找到相应的 msi
安装包,下载安装即可
2、安装 MSYS2
:打开链接 https://www.msys2.org/ ,下载安装。小提示:MSYS2
安装过程中可能下载基础软件的流程,Installing 读条时间会稍微长一些,请耐心等待即可。
安装完毕后,在 Windows
的开始菜单中可以看到很多不同版本的 MSYS2
,我们只需要留意其中的 MSYS2 CLANG64
版本即可
3、安装 Clang
:打开链接 https://packages.msys2.org/search ,首先在 Search in 的下拉菜单中选择 Packages
,其次在搜索框中输入 Clang
,搜索即可。结果如下图:
注意在搜索结果中,一定要选对平台。对于我个人而言,选择图中 x86_64
位版本即可,点击进入详情页面,找到下图:
将 Installation 中的 pacman
安装命令复制一下,打开第 3 步中的 MSYS2 CLANG64
终端,粘贴进去后回车执行安装即可。
4、安装 xmake
:首先在 Search in 的下拉菜单中选择 Base Packages
,其次在搜索框中输入 xmake
,搜索即可。结果如下图:
点击进去详情页后,找到 mingw-w64-clang-x86_64-xmake
3.0 以及 3.0 以上的版本(即与 Clang
对应的版本)后点击进入详情页,和第 3 步一样,将 Installation 中的
pacman
安装命令复制到 MSYS2 CLANG64
终端后,回车执行安装即可。
5、配置系统环境变量:找到 Windows
系统配置环境变量的管理窗口,找到 Path
环境变量(至于是用户级 Path
还是系统级 Path
,可自行选择),双击
修改 Path
系统变量。在打开的新窗口中找到第2步中 MSYS2
的安装目录,再进一步找到 clang64
目录,再进一步选择 bin
目录,点击确定后添加到 Path
环境变量中。
6、fork && clone 项目:打开链接 https://github.com/chinware/AtomUI.ControlGallery ,执行 fork 操作,将 fork 后的项目 clone 到本地;打开链接 https://github.com/chinware/AtomUI ,执行 fork 操作,将 fork 后的项目 clone 到本地。
打开 AtomUI.ControlGallery
项目所在的目录,找到 .gitmodules
文件并打开,将其中的url后的值修改为 AtomUI
的 fork git 地址 (就是将 AtomUI
fork 操作后的 git 地址)。
在终端窗口中打开 AtomUI.ControlGallery
项目所在的目录,执行下面的命令,将 AtomUI.ControlGallery
的子模块 AtomUI
从 github
上拉到本地。关于 git 的 submodule 知识,自行搜索学习。
git submodule update --init --recursive
7、运行与开发:使用 Rider
或 Visual Studio
等 IDE
打开 AtomUI.ControlGallery
项目,可以尝试 Run 运行查看 AtomUI.ControllGalley
的最终效果;打开 packages/AtomUI
目录,可以对 AtomUI
项目源码进行修改,修改后可以再次 Run 运行 AtomUI.ControlGallery
项目查看修改。注意运行的项目要选择 Desktop
,如下图:
Linux系统
1、安装最新版 PowerShell
:打开链接 https://aka.ms/powershell-release?tag=stable ,找到相应的 Linux
发行版的安装包即可。一般说来,Debian
系的发行版选择 deb
后缀;Redhat
系选择 rpm
后缀即可。除此之外,注意系统是 32 位架构还是 64 位架构。
如果是 deb 包,安装命令如下:
// sudo 前缀是假设安装需要 sudo 权限 如果不需要 sudo 权限, 直接去掉 sudo 即可
sudo dpkg -i 名字.deb
如果是 rpm
包,安装命令如下:
sudo dnf install 名字.rpm
2、安装 xmake
:这里同样需要安装 3.0 以及 3.0 以上版本。无论你的 Linux
为哪个发行版,均可以通过如下 xmake
官方推荐的方式安装
curl -fsSL https://xmake.io/shget.text | bash
这个命令会将 xmake
安装至 ~/.local/bin/xmake
这个路径中,然后我们通过如下命令将上述路径添加到环境变量中,以便于在命令行中随时使用。
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
然后可以通过如下命令确认一下是否安装成功以及版本号。
xmake --version
3、安装 Clang
:在 Debian
系发行版中,通过如下命令快速安装
sudo apt install clang
4、安装基础依赖库:在 Debian
系发行版中,通过如下命令安装 libxcb
与 xcb-shape
库
sudo apt install libxcb1-dev
sudo apt install libxcb-shape0-dev
在 Redhat
系发行版中,通过如下命令安装
sudo yum install libxcb-devel xcb-util-devel
5、编译依赖库:打开 AtomUI.ControlGallery
项目所在目录,切换至 packages/AtomUI/nativelibs
目录下,执行下面命令
xmake config --toolchain=clang
以上命令执行后,可能会有一些额外的依赖需要安装,此时输入 y 回车确认即可,如果一切顺利的话,最终如下图
config 完成后,开始执行编译
xmake build
成功如下图
6、参考 Windows
系统中的第 7 步即可