每当我尝试配置 Nemesis 时,它都会停止在“检查 libnet 版本...否”并声称我的版本错误。我已经检查了我的 libnet 文件夹以确保我确实拥有正确的版本。版本 1.0.2a。那么为什么它相信我的版本是错误的呢?
配置会话:
dividan-System nemesis-1.4 # ./configure --with-libnet-includes=/usr/nembuild/Libnet-1.0.2a/include --with-libnet-libraries=/usr/nembuild/Libnet-1.0.2a/lib
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... none
checking for gcc option to accept ANSI C... none needed
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ANSI C... (cached) none needed
checking dependency style of gcc... (cached) none
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking whether gcc needs -traditional... no
checking for an ANSI C-conforming const... yes
checking for gawk... (cached) gawk
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for fabs in -lm... yes
checking for inet_ntoa in -lnsl... yes
checking for socket in -lsocket... no
checking for hstrerror in -lresolv... yes
checking for libnet_build_ip in -lnet... yes
checking for ANSI C header files... yes
checking whether time.h and sys/time.h may both be included... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for unistd.h... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking for strings.h... (cached) yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking machine/endian.h usability... no
checking machine/endian.h presence... no
checking for machine/endian.h... no
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
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
dividan-System nemesis-1.4 #
我完全遵循的指南 -http://insecurety.net/?p=54
经过多次尝试后,指南停止在“检查 libnet.h”,而不是检查版本。我已经检查过它在哪里谈论,是的,libnet.h
里面有一个文件。
config.log
摘录(全文:http://pastebin.com/dgb4BjBq):
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by configure, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ ./configure --with-libnet-includes=/usr/nembuild/Libnet-1.0.2a/include --with-libnet-libraries=/usr/nembuild/Libnet-1.0.2a/lib
…
configure:5276: checking libnet.h usability
configure:5288: gcc -c -g -O2 -Wall -funroll-loops -pipe -I/usr/nembuild/Libnet-1.0.2a/include -D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD -DHAVE_NET_ETHERNET_H -I/usr/local/include -I/sw/include conftest.c >&5
In file included from conftest.c:70:0:
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:87:8: warning: missing terminating " character [enabled by default]
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:87:2: error: #error "byte order has not been specified, you'll
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:88:1: error: unknown type name 'need'
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:88:1: error: stray '#' in program
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:88:10: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'define'
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:88:10: error: unknown type name 'define'
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:89:50: warning: missing terminating " character [enabled by default]
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:89:1: error: missing terminating " character
configure:5294: $? = 1
configure: failed program was:
| /* confdefs.h. */
|
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE "nemesis"
| #define VERSION "1.4"
| #define LINUX 1
| #define HAVE_LIBM 1
| #define HAVE_LIBNSL 1
| #define HAVE_LIBRESOLV 1
| #define HAVE_LIBNET 1
| #define STDC_HEADERS 1
| #define TIME_WITH_SYS_TIME 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_NETDB_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_NETINET_IN_H 1
| /* end confdefs.h. */
| #include <stdio.h>
| #if HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #if HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #if STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # if HAVE_STDLIB_H
| # include <stdlib.h>
| # endif
| #endif
| #if HAVE_STRING_H
| # if !STDC_HEADERS && HAVE_MEMORY_H
| # include <memory.h>
| # endif
| # include <string.h>
| #endif
| #if HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #if HAVE_INTTYPES_H
| # include <inttypes.h>
| #else
| # if HAVE_STDINT_H
| # include <stdint.h>
| # endif
| #endif
| #if HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <libnet.h>
configure:5317: result: no
configure:5321: checking libnet.h presence
configure:5331: gcc -E -I/usr/nembuild/Libnet-1.0.2a/include -D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD -DHAVE_NET_ETHERNET_H -I/usr/local/include -I/sw/include conftest.c
In file included from conftest.c:36:0:
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:87:8: warning: missing terminating " character [enabled by default]
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:87:2: error: #error "byte order has not been specified, you'll
/usr/nembuild/Libnet-1.0.2a/include/libnet.h:89:50: warning: missing terminating " character [enabled by default]
configure:5337: $? = 1
configure: failed program was:
| /* confdefs.h. */
|
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE "nemesis"
| #define VERSION "1.4"
| #define LINUX 1
| #define HAVE_LIBM 1
| #define HAVE_LIBNSL 1
| #define HAVE_LIBRESOLV 1
| #define HAVE_LIBNET 1
| #define STDC_HEADERS 1
| #define TIME_WITH_SYS_TIME 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_NETDB_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_NETINET_IN_H 1
| /* end confdefs.h. */
| #include <libnet.h>
configure:5357: result: no
configure:5392: checking for libnet.h
configure:5399: result: no
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_build=x86_64-unknown-linux-gnu
ac_cv_build_alias=x86_64-unknown-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_c_const=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_exeext=
ac_cv_header_arpa_inet_h=yes
ac_cv_header_errno_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_libnet_h=no
ac_cv_header_limits_h=yes
ac_cv_header_machine_endian_h=no
ac_cv_header_memory_h=yes
ac_cv_header_netdb_h=yes
ac_cv_header_netinet_in_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_param_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_time_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_time=yes
ac_cv_header_unistd_h=yes
ac_cv_host=x86_64-unknown-linux-gnu
ac_cv_host_alias=x86_64-unknown-linux-gnu
ac_cv_lib_m_fabs=yes
ac_cv_lib_net_libnet_build_ip=yes
ac_cv_lib_nsl_inet_ntoa=yes
ac_cv_lib_resolv_hstrerror=yes
ac_cv_lib_socket_socket=no
ac_cv_objext=o
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_AWK=gawk
ac_cv_prog_CPP='gcc -E'
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_cc_g=yes
ac_cv_prog_cc_stdc=
ac_cv_prog_egrep='grep -E'
ac_cv_prog_gcc_traditional=no
ac_cv_prog_make_make_set=yes
am_cv_CC_dependencies_compiler_type=none
am_cv_prog_cc_stdc=
## ----------------- ##
## Output variables. ##
## ----------------- ##
ACLOCAL='${SHELL} /usr/nembuild/nemesis-1.4/missing --run aclocal-1.6'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='${SHELL} /usr/nembuild/nemesis-1.4/missing --run tar'
AUTOCONF='${SHELL} /usr/nembuild/nemesis-1.4/missing --run autoconf'
AUTOHEADER='${SHELL} /usr/nembuild/nemesis-1.4/missing --run autoheader'
AUTOMAKE='${SHELL} /usr/nembuild/nemesis-1.4/missing --run automake-1.6'
AWK='gawk'
CC='gcc'
CCDEPMODE='depmode=none'
CFLAGS='-g -O2 -Wall -funroll-loops -pipe'
CPP='gcc -E'
CPPFLAGS=' -I/usr/nembuild/Libnet-1.0.2a/include -D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD -DHAVE_NET_ETHERNET_H -I/usr/local/include -I/sw/include'
DEFS=''
DEPDIR='.deps'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='grep -E'
EXEEXT=''
INCLUDES=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s'
LDFLAGS=''
LIBOBJS=''
LIBS='-lnet -lresolv -lnsl -lm -L/usr/nembuild/Libnet-1.0.2a/lib '
LN_S='ln -s'
LTLIBOBJS=''
MAKEINFO='${SHELL} /usr/nembuild/nemesis-1.4/missing --run makeinfo'
OBJEXT='o'
PACKAGE='nemesis'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
SET_MAKE=''
SHELL='/bin/bash'
STRIP=''
VERSION='1.4'
ac_ct_CC='gcc'
ac_ct_STRIP=''
am__include='include'
am__quote=''
bindir='${exec_prefix}/bin'
build='x86_64-unknown-linux-gnu'
build_alias=''
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='unknown'
datadir='${prefix}/share'
exec_prefix='NONE'
host='x86_64-unknown-linux-gnu'
host_alias=''
host_cpu='x86_64'
host_os='linux-gnu'
host_vendor='unknown'
includedir='${prefix}/include'
infodir='${prefix}/info'
install_sh='/usr/nembuild/nemesis-1.4/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localstatedir='${prefix}/var'
mandir='${prefix}/man'
oldincludedir='/usr/include'
prefix='/usr/local'
program_transform_name='s,x,x,'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
## ----------- ##
## confdefs.h. ##
## ----------- ##
#define HAVE_ARPA_INET_H 1
#define HAVE_ERRNO_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_LIBM 1
#define HAVE_LIBNET 1
#define HAVE_LIBNSL 1
#define HAVE_LIBRESOLV 1
#define HAVE_LIMITS_H 1
#define HAVE_MEMORY_H 1
#define HAVE_NETDB_H 1
#define HAVE_NETINET_IN_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRINGS_H 1
#define HAVE_STRINGS_H 1
#define HAVE_STRING_H 1
#define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_SYS_TIME_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_UNISTD_H 1
#define HAVE_UNISTD_H 1
#define LINUX 1
#define PACKAGE "nemesis"
#define PACKAGE_BUGREPORT ""
#define PACKAGE_NAME ""
#define PACKAGE_STRING ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define STDC_HEADERS 1
#define TIME_WITH_SYS_TIME 1
#define VERSION "1.4"
configure: exit
答案1
对于任何偶然发现此线程的人。我在这里采用并更新了 Nemesis 以使用新版本的 libnethttps://github.com/troglobit/nemesis