if lua is not enabled, nmap-4.68 does not build at all, but fails in a horrible mess. On the very first file: i686-pc-linux-gnu-g++ -MM -Ilibdnet-stripped/include -Inbase -Insock/include main.cc nmap.cc targets.cc tcpip.cc nmap_error.cc utils.cc idle_scan.cc osscan.cc osscan2.cc output.cc scan_engine.cc timing.cc charpool.cc services.cc protocols.cc nmap_rpc.cc portlist.cc NmapOps.cc TargetGroup.cc Target.cc FingerPrintResults.cc service_scan.cc NmapOutputTable.cc MACLookup.cc nmap_tty.cc nmap_dns.cc traceroute.cc portreasons.cc > makefile.dep In file included from portlist.h:107, from output.h:124, from NmapOps.h:104, from main.cc:105: nse_main.h:5:19: error: lua.h: No such file or directory nse_main.h:6:22: error: lualib.h: No such file or directory nse_main.h:7:23: error: lauxlib.h: No such file or directory It doesn't get any better from there on... Reproducible: Always Steps to Reproduce:
I can comfirm here this error.
Three is a magic number, put me down as having this problem as well. Blessed be! Pappy
Just emerged with the lua USE flag, and installed lua, and now it is installed. I call this a "works for me". Blessed be! Pappy
Also confirming. Compilation by hand (./configure --without-liblua && make) fails the same way. Compilation with lua (./configure --with-liblua && make) succeeds although I have no lua.
Created attachment 159291 [details, diff] Patch to fix compilation errors with USE=-lua Builds fine for me with USE=-lua and this patch applied. I'll post an ebuild patch shortly.
Created attachment 159293 [details, diff] Ebuild patch to apply nmap-4.68-nolua.patch
Works fine for me, thanks.
(In reply to comment #6) > Created an attachment (id=159293) [edit] > Ebuild patch to apply nmap-4.68-nolua.patch > It works for me too. Awaiting for this patch in the main portage tree.
I had the same problem and emerged lua. Now I get the following error: make[1]: Entering directory `/var/tmp/portage/net-analyzer/nmap-4.68/work/nmap-4.68' <CUT> nmap.cc: In function 'void nmap_free_mem()': nmap.cc:1902: error: 'class NmapOps' has no member named 'scriptargs' make[1]: *** [nmap.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/net-analyzer/nmap-4.68/work/nmap-4.68' make: *** [all] Error 2 I just upgraded glibc to 2.8, so maybe it is related to that. rc1 (default/linux/x86/2008.0, gcc-4.1.2, glibc-2.8_p20080602-r0, 2.6.25-gentoo-r5 i686) ================================================================= System uname: Linux-2.6.25-gentoo-r5-i686-Intel-R-_Xeon-R-_CPU_5150_@_2.66GHz-with-glibc2.0 Timestamp of tree: Wed, 02 Jul 2008 17:15:02 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] app-shells/bash: 3.2_p39 dev-lang/python: 2.4.4-r6, 2.5.2-r5 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.62-r1 sys-devel/automake: 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r2 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.4 virtual/os-headers: 2.6.25-r4 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -march=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="acl berkdb bzip2 cli cracklib crypt cups dri fortran gdbm gpm iconv ipv6 isdnlog midi mudflap ncurses nls nptl nptlonly openmp pam pcre perl pppd python readline reflection session spl ssl tcpd unicode x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint i810 mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
It looks like the "configure" part of my patch didn't make it into the tree? (The "configure.ac" part can be deleted, since the ebuild doesn't run eautoreconf; I just included it for completeness. But the "configure" part is required to fix a flag getting added to the wrong variable.)
You should not patch configure, you should always patch configure.ac and run eautoreconf.
Created attachment 159383 [details, diff] Tentative patch to get eautoreconf working Well, it seems I have insufficient autotools karma to get the eautoreconf route working. I've gotten as far as econf succeeding by applying this patch and adding the following to the end of src_unpack from my earlier ebuild patch: epatch "${FILESDIR}/libdnet-aclocal-fix.patch" cp -p nmap_config.h.in acconfig.h cp -p nbase/nbase_config.h.in nbase/acconfig.h cp -p nsock/src/nsock_config.h.in nsock/src/acconfig.h eautoreconf || die "eautoreconf failed" But the build then fails with: make[2]: Entering directory `/var/tmp/portage/net-analyzer/nmap-4.68/work/nmap-4.68/libdnet-stripped/src' /bin/sh ../libtool --tag=CC --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -O2 -march=k8 -msse2 -msse -mmmx -pipe -Wall -c -o addr-util.lo addr-util.c ../libtool: line 821: X--tag=CC: command not found ../libtool: line 854: libtool: ignoring unknown tag : command not found ../libtool: line 821: X--mode=compile: command not found [lots more "X-option" errors] I'm afraid I can't spend any more time on this at the moment, so perhaps someone else can figure out what's going on here?
I've committed an updated version of the patch and ebuild to CVS earlier today -- I think it should fix the problem (please confirm).
Confirmed--thanks!
works now. thanks.
Seems to be fixed -- closing. Thanks for the patches and feedback.