安装 gflags 12.04

安装 gflags 12.04

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

但是当我尝试使用 sudo apt-get 安装它时,我得到了E: Unable to locate package libgflags-dev 为什么会发生这种情况?我已经从软件中心启用了所有多元宇宙和宇宙。

如何从 apt-get 安装它?

PS我知道我可以简单地下载二进制文件并安装它,但我想知道如何从apt-get执行此操作。

答案1

未针对 Precise 进行包装

正如你所看到的packages.ubuntu.com带有查询的网站,此功能在 Precise (12.04) 中不可用,但仅适用于 Quantal (12.10) 及更新版本。

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

手动构建包(反向移植)

对于任何第一次构建包的人来说,这是一个非常详细的描述。

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

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

  3. 展开“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
    

    第一次将会失败:

    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!!
    
  7. 按照上面的错误消息安装所需的 RSA 密钥:

    gpg --keyserver keyserver.ubuntu.com --recv-key 8AE09345
    
  8. 配置 DPKG 开发脚本以使用您的 GPG 密钥环:

    echo 'DSCVERIFY_KEYRINGS="/etc/apt/trusted.gpg:~/.gnupg/pubring.gpg"' > ~/.devscripts
    

    已添加密钥,但 dget 仍然显示“gpg:无法检查签名:未找到公钥”为什么。

  9. 再次运行先前的dget命令。现在应该可以成功了。

  10. 跳转到创建的目录:

    cd gflags-2.0/
    
  11. 尝试构建包。

    debuild -uc -us
    

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

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

    dpkg-checkbuilddeps: Unmet build dependencies: debhelper
    

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

  12. 安装构建依赖项(从获得的输出中满足以上所有内容),例如:

    sudo apt-get install debhelper
    
  13. 尝试再次构建包:

    debuild -uc -us
    
  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
    
  15. 安装它们:

    sudo dpkg -i *gflags*.deb
    

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

    sudo apt-get install -f
    

完毕!

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

下次您构建任何包时,都不必经历所有的麻烦……一般来说,配方如下:

  1. dget <.dsc-file>

  2. cd thefolder

  3. debuild -uc -us

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

答案2

从启动板页面可以看出,gflags 有一个非官方 PPA,它为 precise 提供了 perbuild 二进制文件。我使用了 ppa:fcitx-team/nightly,它看起来运行良好。

相关内容