When i try to emerge snort, I get errors about libnet not being installed. The errors are due to the renaming of libnet when sloting it which makes the configure script fail due to not finding libnet-config,libnet.a,libnet.h because it's now know as libnet-1.0-config,libnet-1.0.h and libnet-1.0.a. So far i have two patches to fix this problem but since one of them is a configure.in patch which seems to be depreceated in gentoo i'll have to wait with posting them untill i have made a configure patch Reproducible: Always Steps to Reproduce: 1.emerge snort Actual Results: configure dies saying libnet is missing and the compile stops. Expected Results: Snort should be compiled and installed
I can reproduce this problem, and the suggested solution for bug #27384 does not help. Mike, since you took that one, maybe you can help here?
well, what versions are we talking here ? 'i got an error' doesnt do it ;) i need: (1) the snort compile errors (2) output of `qpkg -I -v libnet`
checking for mysql... yes checking for compress in -lz... yes ./configure: line 1: libnet-config: command not found ./configure: line 1: libnet-config: command not found ./configure: line 1: libnet-config: command not found ./configure: line 1: libnet-config: command not found checking libnet.h usability... no checking libnet.h presence... no checking for libnet.h... no ERROR! Libnet header not found, go get it from http://www.packetfactory.net/projects/libnet/ or use the --with-libnet-* options, if you have it installed in unusual place make: *** No targets specified and no makefile found. Stop. !!! ERROR: net-analyzer/snort-2.0.0 failed. !!! Function src_compile, Line 72, Exitcode 2 !!! compile problem ---------- # qpkg -I -v libnet net-libs/libnet-1.0.2a-r3 *
Created attachment 17052 [details, diff] Autoconf patch to fix the problem with libnet 1.0 files being renamed Changes all the checks for libnet*.* to libnet-1.0*.* to make configure complete correctly and compile snort. Does require running autoconf before running configure
Created attachment 17053 [details, diff] Changes #include libnet.h to #include libnet-1.0.h in 2 files that require libnet
I can offer a different version of the error: checking libnet.h usability... yes checking libnet.h presence... yes checking for libnet.h... yes checking for libnet version 1.0.2a... no ERROR! Snort with --enable-flexresp will *only* work with libnet version 1.0.2a, go get it from http://www.packetfactory.net/projects/libnet/ ********************************************** ERROR: unable to find libnet 1.0.2a (libnet.h) checked in the following places /usr/include ********************************************** # qpkg -I -v libnet net-libs/libnet-1.1.0-r3 * net-libs/libnet-1.0.2a-r3 * dev-perl/libnet-1.16 *
grr, it seems somehow i missed tagging the libnet ebuilds with ~ARCH ... i set the -r3 versions of libnet to ~ ... your libnet should downgrade itself and you should be all set patrick: make sure you're using either the r3 versions of libnet and snort 2.0.0-r1 or the r2 versions of libnet and snort 2.0.0
snort 2.0.0-r1 does not exist in portage. Mean 2.0.1-r1? Downgrading libnet and using snort 2.0.0 compiles file, though. Shouldn't snort block libnet...-r3, then? Btw, what is that ~net-libs/libnet-1.0.2a entry supposed to do? Couldn't find anything about this atom prefix in man 5 ebuild.
yeah i meant 2.0.1-r1 (basically latest unstable) hmm, i guess i never added ~ to the manpage, i've done so now ... it means 'match any portage revision' ... so it'll match -r0, -r1, -r2, etc...