Bug 230443 - net-analyzer/nmap-4.68 does not build without USE=lua
|
Bug#:
230443
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: spock@gentoo.org
|
Reported By: gregkh@gentoo.org
|
|
Component: Applications
|
|
|
URL:
|
|
Summary: net-analyzer/nmap-4.68 does not build without USE=lua
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2008-07-02 04:18 0000
|
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.
Works fine for me, thanks.
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 an attachment (id=159383) [details]
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).
Seems to be fixed -- closing. Thanks for the patches and feedback.