nhorman / dropwatch

user space utility to interface to kernel dropwatch facility
GNU General Public License v2.0
632 stars 92 forks source link

netlink library required but not checked in configure step #28

Closed neophiliac closed 4 years ago

neophiliac commented 4 years ago

After installing the missing libraries that configure pointed out, 'make' gave this error:

/usr/bin/ld: cannot find -lnl-genl-3

After installing libnl-genl-3-dev, the build completed.

I expected that after configure completed with no errors, the make should also complete with no errors.

nhorman commented 4 years ago

can you attach the config.log file that got generated when you ran configure? configure.ac has a PKG_CHECK_MODULES macro for libnl3 as just about the first operation in the configure script.

neophiliac commented 4 years ago

config.log

It's checking for libnl-3.0, but the linker failed when looking for libnl-gen-3.

Here's the output of make after a 'make clean'.

make.log

"-lnl-3 -lnl-genl-3" always appear together.

nhorman commented 4 years ago

ah, I see the problem. When I added the configure script, libnl3 had a bit of a broken pkg-config setup, in that it had a pkg-config for libnl, but not libnl-genl. That seems to have been corrected now.

I've pushed this branch: https://github.com/nhorman/dropwatch/tree/pkg-config-fix

with a correction to the configure script. Can you please attempt to build that branch and confirm that the issue is resolved? Not, depending on your version of ubuntu, you may need to install the libnl-genl-3.0-dev pacakge for it to work (configure will fail if its not installed)

neophiliac commented 4 years ago

That works great. No errors or warnings.

Thanks!

nhorman commented 4 years ago

awesome, I'll merge it today, thanks!