无法从源安装最新版本的 GnuPG

sya*_*yam 0 gnupg software-installation 16.04

我尝试从源 tar.gz 包安装最新的 GnuPG,但我遇到了这些错误。

需要帮助来解决这些问题。我下载了错误消息中提到的软件包,但仍然无法成功安装或构建它。

我附上了错误的截图。

编译器错误截图

Anw*_*war 7

Ubuntu Xenial 安装 GnuPG 2.1.11,它以gpg2二进制形式提供。有一个gpg来自 1.14 版。最新版本是 2.1.15。如果需要该版本,则需要通过编译从源代码安装它。

要从源代码编译,您需要首先获取这些包的更新库 -

npth         (ftp://ftp.gnupg.org/gcrypt/npth/)
libgpg-error (ftp://ftp.gnupg.org/gcrypt/libgpg-error/)
libgcrypt    (ftp://ftp.gnupg.org/gcrypt/libgcrypt/)
libksba      (ftp://ftp.gnupg.org/gcrypt/libksba/)
libassuan    (ftp://ftp.gnupg.org/gcrypt/libassuan/)
Run Code Online (Sandbox Code Playgroud)

1.安装 npth

  1. 下载 1.2 版 npth

    wget ftp://ftp.gnupg.org/gcrypt/npth/npth-1.2.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 打开包装

    tar xf npth-1.2.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  3. 转到它的目录并构建它

    cd npth-1.2  
    ./configure
    make
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

2.安装 libgpg-error

  1. 下载版本 1.24

    wget https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.24.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 解压,cd到目录,配置,制作&安装

    tar xf libgpg-error-1.24.tar.bz2
    cd libgpg-error-1.24
    ./configure
    make
    make check
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

3.安装 libgcrypt

  1. 下载 1.7.3 版本

    wget https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.7.3.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 解压,cd到目录,配置,制作&安装

    tar xf libgcrypt-1.7.3.tar.bz2
    cd libgcrypt-1.7.3
    ./configure
    make
    make check
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

4.安装 libassuan

  1. 下载2.3.4版本

    wget https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-2.4.3.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 解压,cd到目录,配置,制作&安装

    tar xf libassuan-2.4.3.tar.bz2
    cd libassuan-2.4.3
    ./configure
    make
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

5.安装 libksba

  1. 下载 1.3.4 版本

    wget https://www.gnupg.org/ftp/gcrypt/libksba/libksba-1.3.4.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 解压,cd到目录,配置,制作&安装

    tar xf libksba-1.3.4.tar.bz2        
    cd libksba-1.3.4
    ./configure
    make
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

6. 现在安装 gnupg2

  1. 下载版本 2.1.15

    wget https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-2.1.15.tar.bz2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 解压cd,配置

    tar xf gnupg-2.1.15.tar.bz2        
    cd gnupg-2.1.15
    ./configure
    make
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)

安装完成后,您应该已完成,检查版本。但在此之前使用此命令以便可以加载新安装的库。

sudo ldconfig
Run Code Online (Sandbox Code Playgroud)

然后检查版本

gpg2 --version
Run Code Online (Sandbox Code Playgroud)

您还可以检查它的安装位置

which gpg2
Run Code Online (Sandbox Code Playgroud)

它应该返回

/usr/local/bin/gpg2
Run Code Online (Sandbox Code Playgroud)

希望有帮助。