【问题标题】:dnf can't find package installed by automakednf 找不到 automake 安装的软件包
【发布时间】:2016-08-31 01:43:11
【问题描述】:

我已经通过 automake(autogen、configure、make、make install)构建并安装了几个包。

一切顺利,运行良好。但是dnf 没有看到安装了任何这些软件包。 make install 创建所有 .pc 文件并将其正确复制到 /usr/local/lib/pkgconfigpkg-config --exists <my app> 返回 0,但 dnf list installed <my app> 表示 no matching packages to list

有什么想法/建议吗?

【问题讨论】:

    标签: automake pkg-config dnf


    【解决方案1】:

    Yum(和 dnf)保留已安装 rpm 软件包的列表,未安装的可执行文件或 tarball。

    pkg-config 不关心 .pc 文件是来自已安装的 rpm 包还是来自编译 tarball - 只要 .pc 文件位于正确的搜索路径中。

    所以,要让 yum 或 dnf 知道它是安装的 rpm,您必须创建一个 rpm。一些源 tarball 中包含一个 .spec 文件以帮助 rpm。在这种情况下,您可以通过运行来构建 rpm

    rpmbuild -tb thetarballpackage.tar.gz
    

    (或类似的)但是,您也会冒着创建的风险(然后安装可能会在尝试安装或更新其他 rpm 时导致冲突的 rpm。

    【讨论】:

    • 是的,这是有道理的。我的问题是我需要最新版本的 gstreamer 及其插件。但是,在 catch 22 情况下,其中一个插件需要 xmms,而 xmms 需要 gstreamer。哦,是的,为了让事情变得更加复杂,我正在交叉编译一个 rpi :-)。但是将它们全部制作成 rpm 听起来是一个不错的项目 :-(。谢谢答案。
    猜你喜欢
    • 1970-01-01
    • 2012-12-14
    • 2021-09-13
    • 1970-01-01
    • 2015-10-30
    • 2019-12-16
    • 1970-01-01
    • 2019-11-08
    • 2017-01-29
    相关资源
    最近更新 更多