在Arch Linux上使用Makepkg

如果makepkg直接使用它,将会对您的系统造成一定的污染。的base-devel必须安装软件包组。这样,默认情况下,将保留仅生成软件包所需的依赖关系,而无需使用它。可以更改此默认行为,但这涉及安装和卸载软件包以及污染/var/log/pacman.log

请参阅本文以了解和一般使用AUR,包括获取AUR PKGBUILDmakepkg如果您选择编译包的方法,则此文档仅显示特定于的步骤。

使用Makepkg进行编译

如果base-devel尚未安装软件包组,则需要安装它。如果您没有makepkg安装,则将假定它已经安装,并且如果其中的软件包是必需的但尚未安装,则它只会失败而不是为您安装。 makepkg本身是pacman软件包的一部分,已经安装。

# pacman -S base-devel

您需要makepkg在的目录中运行PKGBUILD,该目录由创建git clone。默认情况下,它将下载实际的源代码,编译该程序包并将其打包。

的选项很多makepkg,包括以下常用选项:

  • -s, --syncdeps :自动安装构建和使用软件包所需的缺少依赖项。
    • 请注意,如果PKGBUILD依赖于AUR软件包,则需要先安装它们,或者在您自己的本地存储库中提供它们,以便它可以找到它们。
  • -r, --rmdeps :如果构建成功,则自动卸载不再需要的依赖项,包括以下各项:
    • 需要构建但不使用软件包的软件包。
    • 如果不带--install选件使用,则是使用该包装所必需的。
  • -i, --install :如果构建成功,则自动安装/升级软件包。
  • -c, --clean :自动删除临时构建文件,通常仅在调试出问题的构建时才需要。

要自动安装/升级软件包,请保留使用软件包的依赖关系,并删除仅在构建期间需要的依赖关系,请运行:

# makepkg -sri

或者,您可以选择不自动安装它,并保留所有依赖项的安装,因此,如果有一天打包升级包,则它们已经安装:

# makepkg -s

然后,您可以按照此处的说明使用本地存储库,也可以直接安装文件:

# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz

包装更快

默认情况下,makepkg将整个软件包合并为存档格式;.tar.xz使用单个线程进行xz压缩来制作文件。

在多CP​​U系统上,可以xz通过编辑允许使用多个线程/etc/makepkg.conf,并更改以下行:

COMPRESSXZ=(xz -c -z -)

您可以允许具有虚拟核心的线程数:

COMPRESSXZ=(xz -c -z - --threads=0)

为了允许使用多个虚拟核心,但又不是全部虚拟核心,以减少对整体系统性能的影响,请添加一个特定的数字,例如:

COMPRESSXZ=(xz -c -z - --threads=21)

注意: 指定的线程数多于您拥有的虚拟核心数,将会降低性能。

如果您不介意打包文件较大(可能很大),请通过编辑禁用压缩/etc/makepkg.conf,然后更改以下行:

PKGEXT='.pkg.tar.xz'

它应如下所示:

PKGEXT='.pkg.tar'

跳过验证PGP签名

我们推荐正确验证,并添加任何signaturesused PGP,如解释在这里一节“PGP签名错误”。

但是,如果makepkg直接运行,则可以为其--skippgpcheck选择跳过验证PGP签名的选项。



Leave a Comment

在Arch Linux上安装Spigot Server

在Arch Linux上安装Spigot Server

本教程说明了如何在Arch Linux上使用Spigot设置Minecraft服务器。本教程假定您是普通用户(非root用户)并且具有hav

使用Btrfs快照安装Arch Linux

使用Btrfs快照安装Arch Linux

前言Arch Linux是一种通用发行版,以其先进的技术和灵活的配置而闻名。使用Btrfs快照,我们可以

如何在Arch Linux上安装MariaDB 10.3或MySQL 8.0

如何在Arch Linux上安装MariaDB 10.3或MySQL 8.0

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问:需要以root身份运行的命令以#开头,其中一个

在Arch Linux上安装Mumble Server

在Arch Linux上安装Mumble Server

本教程说明了如何在Arch Linux上设置Mumble服务器(Murmur)。本教程中完成的所有操作均以root用户身份完成。安装

如何在Arch Linux上安装Nginx 1.14

如何在Arch Linux上安装Nginx 1.14

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问。需要以root身份运行的命令带有#前缀。钍

如何在Arch Linux Web服务器上安装PHP 7.3

如何在Arch Linux Web服务器上安装PHP 7.3

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问。命令要求

在Arch Linux上设置反恐精英:全球攻势(CSGO)服务器

在Arch Linux上设置反恐精英:全球攻势(CSGO)服务器

本教程说明了如何在Arch Linux上设置“反恐精英:全球攻势”服务器。本教程假定您以标准用法登录

如何在Arch Linux上安装PostgreSQL 11.1

如何在Arch Linux上安装PostgreSQL 11.1

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)Sudo访问。需要以root身份运行的命令以#开头,其中一个

在Arch Linux上使用Devtools

在Arch Linux上使用Devtools

Devtools软件包最初是为受信任的用户制作的,可以为官方存储库正确创建软件包。但是,普通用户可以使用

在Vultr服务器上安装2019 Arch Linux

在Vultr服务器上安装2019 Arch Linux

简介Arch Linux的规模较小,但仍然比流行的发行版本强大。其理念截然不同,具有优势

如何在Arch Linux Web服务器上安装Python 3.7

如何在Arch Linux Web服务器上安装Python 3.7

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问:命令需要

如何在Arch Linux Web服务器上使用HTTPS

如何在Arch Linux Web服务器上使用HTTPS

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)运行中的Web服务器,Apache或Nginx Sudo访问命令要求t

如何在Arch Linux上安装MongoDB 4.0

如何在Arch Linux上安装MongoDB 4.0

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文)Sudo访问:需要以root身份运行的命令以#开头,其中一个

在Arch Linux上构建软件包(包括AUR)

在Arch Linux上构建软件包(包括AUR)

在Arch Linux上,官方存储库为:核心,额外和社区。这些软件包已被编译,并通过pacman安装。向前

在Vultr服务器上安装Arch Linux

在Vultr服务器上安装Arch Linux

Vultr除了出色的模板之外,还为您提供了令人敬畏的功能,使您可以使用自己的自定义图像,从而使您可以运行

如何在Arch Linux上安装Apache 2.4

如何在Arch Linux上安装Apache 2.4

先决条件运行最新Arch Linux的Vultr服务器。有关更多信息,请参见本指南。须藤访问。需要以root用户身份运行的命令

如何在Arch Linux Web服务器上安装Perl 5.28

如何在Arch Linux Web服务器上安装Perl 5.28

先决条件运行最新的Arch Linux的Vultr服务器(请参阅本文。)正在运行的Web服务器,可以使用Apache或Nginx Sudo访问:命令需要

在Arch Linux上设置Team Fortress 2服务器

在Arch Linux上设置Team Fortress 2服务器

本教程说明了如何在Arch Linux上设置Team Fortress 2服务器。我假设您使用具有sudo访问权限的非root用户帐户登录

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。