/usr/bin/ld: 找不到 -lauparse

/usr/bin/ld: cannot find -lauparse

如何在 Fedora 26 上安装 auparse 库?

$ gcc -lauparse me.c
/usr/bin/ld: cannot find -lauparse

我尝试了很多东西,包括这些。

$ sudo find / -name *auparse.so
/usr/lib64/python3.6/site-packages/auparse.so
$ export LD_LIBRARY_PATH=/usr/lib64/python3.6/site-packages/
didnt help :{
sudo ln -s /usr/lib64/python3.6/site-packages/auparse.so /usr/lib/gcc/x86_64-redhat-linux/7/auparse.so
didnt help :{
$ pkg-config --libs auparse
Package auparse was not found in the pkg-config search path.

非常感谢帮助。

你需要audit-libs-devel。以下是我的发现:

$ sudo dnf install /usr/lib64/libauparse.so
Dependencies resolved.
================================================================================
 Package               Arch        Version           Repository            Size
================================================================================
Installing:
 audit-libs-devel      x86_64      2.7.7-1.fc26      updates-testing       81 k

总的来说:

  1. 库将在 x86_64 系统上的 /usr/lib64 中。
  2. -lsomething表示寻找/usr/lib64/libsomething.so
  3. 而且 DNF 有这个巧妙的功能,它可以按文件查找东西,所以你去吧。
  4. 此外,对于 Fedora 上的大多数库,有一个运行时包(此处为 audit-libs,然后是一个开发包 (audit-libs-devel),其中包含 .so 符号链接和通常的头文件和东西。