如何让 pkg-config 找到 libpcap
How to make libpcap be found by pkg-config
我正在尝试调整需要 libpcap
安装的软件的依赖关系,但由于某种原因找不到它。
这个软件使用pkg-config
试图找到依赖libpcap
,我可以看到安装了libpcap-dev
,libpcap0.8
:[=25=也安装了]
dpkg -s libpcap-dev:
Package: libpcap-dev
Status: install ok installed
Priority: optional
Section: libdevel
Installed-Size: 34
Maintainer: Romain Francoise <rfrancoise@debian.org>
Architecture: armhf
Multi-Arch: same
Source: libpcap
Version: 1.8.1-6
Depends: libpcap0.8-dev
dpkg -s libpcap0.8
Package: libpcap0.8
Status: install ok installed
Priority: optional
Section: libs
Installed-Size: 286
Maintainer: Romain Francoise <rfrancoise@debian.org>
Architecture: armhf
Multi-Arch: same
Source: libpcap
Version: 1.8.1-6
Replaces: libpcap0.8-dev (<< 1.0.0-2)
Depends: libc6 (>= 2.11)
我也可以看到共享库存在 ldconfig -p | grep libpcap
:
libpcap.so.0.8 (libc6,hard-float) => /lib/arm-linux-gnueabihf/libpcap.so.0.8
libpcap.so (libc6,hard-float) => /lib/arm-linux-gnueabihf/libpcap.so
但是pkg-config --modversion libpcap
还是找不到。我还查找了所有可用的 $PKG_DIR_PATH
,其中 none 有一个 libpcap.pc
配置文件。
这就是我要构建的内容:https://github.com/martinpitt/umockdev
我不知道如何通知 pkg-config
关于 libpcap
的存在。
您系统上的 libpcap 基于 tcpdump.org libpcap 1.8.1 版本。该版本没有提供 .pc 文件,Debian 也懒得自己提供它们。
.pc 文件是在 libpcap 1.9 中添加的,因此 1.9.0 和所有后续版本,包括当前的 1.10.1 版本,都提供 .pc 文件。
您需要:
- 将您机器上的 OS 升级到提供 1.9 或 1.10 libpcap 版本的软件;
- 自行下载并安装 libpcap 1.10.1;
- 更改 umockdev 以使用 pcap-config 脚本(如果存在且不存在 .pc 文件)。
我正在尝试调整需要 libpcap
安装的软件的依赖关系,但由于某种原因找不到它。
这个软件使用pkg-config
试图找到依赖libpcap
,我可以看到安装了libpcap-dev
,libpcap0.8
:[=25=也安装了]
dpkg -s libpcap-dev:
Package: libpcap-dev
Status: install ok installed
Priority: optional
Section: libdevel
Installed-Size: 34
Maintainer: Romain Francoise <rfrancoise@debian.org>
Architecture: armhf
Multi-Arch: same
Source: libpcap
Version: 1.8.1-6
Depends: libpcap0.8-dev
dpkg -s libpcap0.8
Package: libpcap0.8
Status: install ok installed
Priority: optional
Section: libs
Installed-Size: 286
Maintainer: Romain Francoise <rfrancoise@debian.org>
Architecture: armhf
Multi-Arch: same
Source: libpcap
Version: 1.8.1-6
Replaces: libpcap0.8-dev (<< 1.0.0-2)
Depends: libc6 (>= 2.11)
我也可以看到共享库存在 ldconfig -p | grep libpcap
:
libpcap.so.0.8 (libc6,hard-float) => /lib/arm-linux-gnueabihf/libpcap.so.0.8
libpcap.so (libc6,hard-float) => /lib/arm-linux-gnueabihf/libpcap.so
但是pkg-config --modversion libpcap
还是找不到。我还查找了所有可用的 $PKG_DIR_PATH
,其中 none 有一个 libpcap.pc
配置文件。
这就是我要构建的内容:https://github.com/martinpitt/umockdev
我不知道如何通知 pkg-config
关于 libpcap
的存在。
您系统上的 libpcap 基于 tcpdump.org libpcap 1.8.1 版本。该版本没有提供 .pc 文件,Debian 也懒得自己提供它们。
.pc 文件是在 libpcap 1.9 中添加的,因此 1.9.0 和所有后续版本,包括当前的 1.10.1 版本,都提供 .pc 文件。
您需要:
- 将您机器上的 OS 升级到提供 1.9 或 1.10 libpcap 版本的软件;
- 自行下载并安装 libpcap 1.10.1;
- 更改 umockdev 以使用 pcap-config 脚本(如果存在且不存在 .pc 文件)。