Nmap Development mailing list archives

nmap 3.93 compilation error with gcc under Solaris


From: "Maciej Uhlig" <muhlig () us edu pl>
Date: Fri, 2 Dec 2005 10:22:17 +0100

Hi,

nmap 3.93 (also 3.94ALPHA1) doesn't compile with gcc 2.95.2 under
Solaris:

first:

g++ -c  -Ilibdnet-stripped/include -Ilibpcre -g -O2 -Wall  -Ilibpcap
-Inbase -Insock/include  -DHAVE_CONFIG_H -DNMAP_VERSION=\"3.93\"
-DNMAP_NAME=\"nmap\" -DNMAP_URL=\"http://www.insecure.org/nmap/\";
-DNMAP_PLATFORM=\"sparc-sun-solaris2.6\"
-DNMAPDATADIR=\"/usr/local/share/nmap\" tcpip.cc -o tcpip.o
In file included from tcpip.h:234,
                 from tcpip.cc:104:
/usr/include/netinet/ip_icmp.h:44: warning: `icmp_pptr' redefined
libdnet-stripped/include/dnet/icmp.h:131: warning: this is the location
of the previous definition
/usr/include/netinet/ip_icmp.h:45: warning: `icmp_gwaddr' redefined
libdnet-stripped/include/dnet/icmp.h:144: warning: this is the location
of the previous definition
/usr/include/netinet/ip_icmp.h:120: warning: `ICMP_INFOTYPE' redefined
libdnet-stripped/include/dnet/icmp.h:104: warning: this is the location
of the previous definition
In file included from tcpip.cc:122:
/usr/include/net/if.h:86: `struct map' redeclared as different kind of
symbol
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g
++-3/stl_map.h:48: previous declaration of `template <class _Key, class
_Tp, class _Compare = struct less<_Key>, class _Alloc = class
allocator<_T2> > class map<_Key,_Tp,_Compare,_Alloc>'
tcpip.cc: In function `static void
PacketTrace::traceArp(PacketTrace::pdirection, const u8 *, unsigned int,
timeval *)':
tcpip.cc:225: `INET_ADDRSTRLEN' undeclared (first use this function)
tcpip.cc:225: (Each undeclared identifier is reported only once
tcpip.cc:225: for each function it appears in.)
tcpip.cc:248: `who_has' undeclared (first use this function)
tcpip.cc:249: passing `off_t (*)(int)' as argument 3 of `inet_ntop(int,
const void *, char *, unsigned int)'
make: *** [tcpip.o] Error 1
#
# gcc -v
Reading specs from
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/specs
gcc version 2.95.2 19991024 (release)
#
# uname -a
SunOS xxx 5.6 Generic_105181-30 sun4u sparc SUNW,Ultra-4

second:

g++ -c  -Ilibdnet-stripped/include -Ilibpcre -g -O2 -Wall  -Ilibpcap
-Inbase -Insock/include  -DHAVE_CONFIG_H -DNMAP_VERSION=\"3.93\"
-DNMAP_NAME=\"nmap\" -DNMAP_URL=\"http://www.insecure.org/nmap/\";
-DNMAP_PLATFORM=\"sparc-sun-solaris2.8\"
-DNMAPDATADIR=\"/usr/local/share/nmap\" tcpip.cc -o tcpip.o
In file included from tcpip.h:234,
                 from tcpip.cc:104:
/usr/include/netinet/ip_icmp.h:82: warning: `icmp_pptr' redefined
libdnet-stripped/include/dnet/icmp.h:131: warning: this is the location
of the previous definition
/usr/include/netinet/ip_icmp.h:83: warning: `icmp_gwaddr' redefined
libdnet-stripped/include/dnet/icmp.h:144: warning: this is the location
of the previous definition
/usr/include/netinet/ip_icmp.h:175: warning: `ICMP_INFOTYPE' redefined
libdnet-stripped/include/dnet/icmp.h:104: warning: this is the location
of the previous definition
In file included from tcpip.cc:122:
/usr/include/net/if.h:87: `struct map' redeclared as different kind of
symbol
/usr/local/gcc/lib/gcc-lib/sparc-sun-solaris2.8/2.95.2/../../../../inclu
de/g++-3/stl_map.h:48: previous declaration of `template <class _Key,
class _Tp, class _Compare = struct less<_Key>, class _Alloc = class
allocator<_T2> > class map<_Key,_Tp,_Compare,_Alloc>'
make: *** [tcpip.o] Error 1

# gcc -v
Reading specs from
/usr/local/gcc/lib/gcc-lib/sparc-sun-solaris2.8/2.95.2/specs
gcc version 2.95.2 19991024 (release)
#
# uname -a
SunOS yyy 5.8 Generic_108528-12 sun4u sparc SUNW,Ultra-4
#

Best regards,

MU



_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev


Current thread: