教程:如何从源码编译 GNOME Shell 和应用

优采云 发布时间: 2022-10-20 21:25

  教程:如何从源码编译 GNOME Shell 和应用

  这是关于如何从源代码编译 GNOME 的快速指南,包括 shell、mutter 和一些本机应用程序。

  在编译之前,你需要确定一些事情,因为下面的编译直接来自 Gitlab 的 master 分支,其中收录一些开发包。

  通常,您可以选择在任何 Linux 发行版中进行编译。但我推荐 Fedora Rawhide(Fedora 未来版本的开发分支)。

  另外,不要在稳定的系统上尝试这个。由于操作可能出错,您最终可能会导致系统损坏。

  总之,您需要以下内容来从源代码编译 GNOME。

  我不建议您在 Wayland 会话中编译,因为您会遇到问题。

  从源代码编译 GNOME

  GNOME 桌面是基于其功能的软件包集合。Linux 发行版的桌面组件在窗口管理器和 shell 下工作。

  所以,对于 GNOME,我将从编译 mutter 开始——它是 GNOME Shell 的窗口管理器。然后为 GNOME Shell 编译。最后,我将编译一些原生应用程序。

  我将使用介子构建系统进行编译。meson 是一个漂亮的构建系统,快速且用户友好。

  编译mutter

  打开终端并安装 GNOME Shell 和 mutter 所需的软件包。

  sudo dnf build-dep mutter gnome-shell

  在您的主目录(或您想要的任何地方)中创建一个演示目录。

  cd ~

mkdir demo

cd demo

  从 Gitlab 克隆 mutter 的主分支。

  

  git clone https://gitlab.gnome.org/GNOME/mutter

  进入克隆目录并使用以下介子命令准备构建文件。默认情况下,介子使用 /usr/local 构建文件。但是,您也可以使用前缀开关将输出重定向到特定文件夹(如下所示)。

  cd mutter

meson _build --prefix=/usr

  构建完成后,使用以下命令在系统上安装 mutter。

  sudo ninja install -C _build

  编译 GNOME 外壳

  GNOME Shell 的编译方式与其他包类似。首先,从 GitLab 克隆 GNOME Shell 主存储库,然后编译并安装它。您可以按顺序执行以下命令。

  在 GNOME Shell 中,您需要两个依赖项。它们是 asciidoc 和 sassc。请在构建 GNOME Shell 之前安装它们。

  sudo dnf install asciidoc

sudo dnf install sassc

  安装这些依赖项后,按照以下命令构建和安装 GNOME Shell。在运行此命令之前,请确保您回到了演示文件夹(我在第一步中创建的)。

  git clone https://gitlab.gnome.org/GNOME/gnome-shellcd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

  运行 GNOME 外壳

  编译后,您可以尝试重新启动 GNOME Shell 以查看 master 分支的更改。

  正如我之前提到的,在重新启动之前,请确保您处于 X.Org 会话中。按 ALT+F2 并输入 r。然后按回车。此命令将重新启动 GNOME Shell。

  

  恭喜!您已成功编译 GNOME Shell 和 Mutter。

  现在,是时候编译一些 GNOME 本机应用程序了。

  编译 GNOME 本机应用程序

  这些步骤对于 GNOME 或任何应用程序的所有源代码都是相同的。您需要更改存储库名称。因此,这里有一些命令示例来编译必要的 GNOME 本机应用程序。

  文件(鹦鹉螺)

  git clone https://gitlab.gnome.org/GNOME/nautilus/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

  GNOME 软件商店

  git clone https://gitlab.gnome.org/GNOME/gnome-software/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

  GNOME 控制中心

  git clone https://gitlab.gnome.org/GNOME/gnome-control-center/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

  FAQ 使用上述步骤,您可以编译任何源分支。不仅仅是 GNOME。GitLab 服务器有时很慢,克隆存储库可能需要很长时间。如果 git clone 失败,我建议你再试一次。结束语

  我希望这个小小的高级教程可以帮助您在 GNOME 每日构建系统出现之前尝试新的 GNOME 功能。现在您已经编译了,您还可以为测试新的 GNOME 功能做出贡献,并在 GitLab 问题页面上报告任何特定于包的错误或问题。

  本文章是开源应用编译系列的第一个文章。更多开源应用编译请继续关注文章。

  另外,请在下方的评论框中告诉我您的意见、建议或您在使用这些说明时遇到的任何错误。

  干杯。

  通过:

  作者:Arindam 题目:lkxed 译者:geekpi 校对:wxy

  本文由LCTT原创编译,Linux中国荣幸推出

  干货教程:kali破解WiFi教程SEO

  新站全站收录

  

  AI高效写作工具颠覆了传统的行业写作模式,利用爬虫技术采集、抓取同行业数据,通过深度学习进行句法语义分析。使用指纹索引技术精准推荐用户需要的相关内容,智能伪原创和相似度检测分析,使用工具实现软文写作的简单、高效、智能完成。优采云综合检测文章采集、AI伪原创、原创,实现从互联网到互联网的生态链。如何通过扩展数据判断伪原创的文章

  SEO工具效果

  

  小编认为seo是指在了解搜索引擎优化的自然排名算法的基础上,对网站进行内外优化,让网站的关键词在搜索中可以更好引擎。自然排名获得更多流量,促进网站销售和品牌建设。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线