安装 gflags 12.04

Cha*_*ani 2 software-center installation apt

我想安装 libgflags-dev。根据此启动板链接,它存在于 ubuntu 存储库中:https : //launchpad.net/ubuntu/+source/gflagshttp://packages.ubuntu.com/raring/libdevel/libgflags-dev

但是当我尝试 sudo apt-get install 它时,我明白E: Unable to locate package libgflags-dev 为什么会这样?我从软件中心启用了所有多元宇宙和宇宙。

如何从 apt-get 安装它?

PS我知道我可以简单地下载二进制文件并安装它,但我想知道如何从apt-get做到这一点。

ger*_*ijk 6

不为精确包装

正如您在packages.ubuntu.com带有 query站点上看到的,这在 Precise (12.04) 中不可用,但仅适用于 Quantal (12.10) 和更新版本。

这里不是从源代码安装,而是如何从 Quantal 的源代码构建您自己的包。

手动包构建(向后移植)

这是一个非常冗长的描述 - 对于第一次构建包的任何人。

  1. 安装基本包来构建软件和包:build-essential安装 build-essential和开发脚本安装开发脚本.

  2. 转到gflagsLaunchpad的源包 ( ) 页面:https : //launchpad.net/ubuntu/+source/gflags

  3. 展开“The Quantal Quetzal(支持)2.0-1”版本部分。

  4. 找到源包描述文件(.dsc扩展名)。在撰写本文时,这是https://launchpad.net/ubuntu/+archive/primary/+files/gflags_2.0-1.dsc

  5. 链接复制到剪贴板。

  6. 打开终端并使用dget以下命令下载源包:

    dget https://launchpad.net/ubuntu/+archive/primary/+files/gflags_2.0-1.dsc
    
    Run Code Online (Sandbox Code Playgroud)

    这将第一次失败:

    gpg: Signature made Thu 31 May 2012 14:48:41 CEST using RSA key ID 8AE09345
    gpg: Can't check signature: public key not found
    Validation FAILED!!
    
    Run Code Online (Sandbox Code Playgroud)
  7. 按照上面的错误消息安装所需的 RSA 密钥:

    gpg --keyserver keyserver.ubuntu.com --recv-key 8AE09345
    
    Run Code Online (Sandbox Code Playgroud)
  8. 配置 DPKG 开发脚本以使用您的 GPG 密钥环:

    echo 'DSCVERIFY_KEYRINGS="/etc/apt/trusted.gpg:~/.gnupg/pubring.gpg"' > ~/.devscripts
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅添加密钥,但 dget 仍显示“gpg:无法检查签名:未找到公钥”以了解原因。

  9. dget再次运行之前的命令。这现在应该成功了。

  10. 跳转到创建的目录:

    cd gflags-2.0/
    
    Run Code Online (Sandbox Code Playgroud)
  11. 尝试构建包。

    debuild -uc -us
    
    Run Code Online (Sandbox Code Playgroud)

    选项说明:未签名的更改文件、未签名的新.dsc文件。由于您没有重新分发包,因此无需签署任何内容。

    由于缺少构建依赖项,这可能会失败,例如:

    dpkg-checkbuilddeps: Unmet build dependencies: debhelper
    
    Run Code Online (Sandbox Code Playgroud)

    请注意,这确实是特定于系统的。

  12. 安装构建依赖项(从你得到的输出中满足以上所有条件),例如:

    sudo apt-get install debhelper
    
    Run Code Online (Sandbox Code Playgroud)
  13. 再次尝试构建包:

    debuild -uc -us
    
    Run Code Online (Sandbox Code Playgroud)
  14. 在下面的一个目录中,您将找到您的软件包,例如:

    $ cd ..
    $ ls -al *gflags*.deb
    -rw-r--r-- 1 gert gert 108450 Jun 24 18:59 libgflags2_2.0-1_amd64.deb
    -rw-r--r-- 1 gert gert 147590 Jun 24 18:59 libgflags-dev_2.0-1_amd64.deb
    -rw-r--r-- 1 gert gert  14778 Jun 24 18:59 libgflags-doc_2.0-1_all.deb
    
    Run Code Online (Sandbox Code Playgroud)
  15. 安装它们:

    sudo dpkg -i *gflags*.deb
    
    Run Code Online (Sandbox Code Playgroud)

    如果由于不满足二进制依赖关系而失败,请运行

    sudo apt-get install -f
    
    Run Code Online (Sandbox Code Playgroud)

完毕!

您可以随时删除或更新它们,就像任何其他包一样。

下次您构建任何包时,您将不必经历所有的过程……一般来说,配方是这样的:

  1. dget <.dsc-file>

  2. cd thefolder

  3. debuild -uc -us

  4. sudo dpkg -i ../*somepattern*.deb