本文介绍了dpkg-shlibdeps: 错误: 没有找到依赖信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编译一个 deb 包,当我运行 dpkg-buildpackage 时,我得到:

I'm compiling a deb package and when I run dpkg-buildpackage I get:

dpkg-shlibdeps: error: no dependency information found for /usr/local/lib/libopencv_highgui.so.2.3

    ...
    make: *** [binary-arch] Error 2

这是因为我手动安装了依赖项.我知道如果我安装依赖项(或使用 checkinstall),问题就会得到解决,而且我还是想生成包,因为我对依赖项检查不感兴趣.我知道我可以给 dpkg-shlibdeps 选项 --ignore-missing-info 如果找不到依赖信息,它可以防止失败.但我不知道如何将此选项传递给 dpkg-shlibdeps,因为我正在使用 dpkg-buildpackage 并且 dpkg-buildpackage 调用 dpkg-shlibdeps ...

This happens because I installed the dependency manually. I know that the problem will be fixed if I install the dependency (or use checkinstall), and I want to generate the package anyway because I'm not interested on dependency checking. I know that I can give to dpkg-shlibdeps the option --ignore-missing-info which prevents a fail if dependency information can't be found. But I don't know how to pass this option to dpkg-shlibdeps since I'm using dpkg-buildpackage and dpkg-buildpackage calls dpkg-shlibdeps...

我已经试过了:

sudo dpkg-buildpackage -rfakeroot -d -B

还有:

export DEB_DH_MAKESHLIBS_ARG=--ignore-missing-info

作为根用户.

有什么想法吗?

推荐答案

使用:

override_dh_shlibdeps:
    dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info

如果您的规则文件中没有 dh_shlibdeps 调用.如果你已经

if your rule file hasn't the dh_shlibdeps call in it. That's usually the case if you've

%:
    dh $@

作为唯一的规则...在上面,您必须在 dh_shlibdeps 前面使用制表符而不是空格

as only rule in it ... in above you must use a tab and not spaces in front of the dh_shlibdeps

这篇关于dpkg-shlibdeps: 错误: 没有找到依赖信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-02 19:20