ports/166317: Missing include file causing compilation failure

Andrew Teixeira teixeira at broadinstitute.org
Thu Mar 22 14:00:34 UTC 2012


>Number:         166317
>Category:       ports
>Synopsis:       Missing include file causing compilation failure
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 22 14:00:23 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Andrew Teixeira
>Release:        7.1-RELEASE-p8
>Organization:
Broad Institute
>Environment:
FreeBSD xxxxxxxxxx.broadinstitute.org 7.1-RELEASE-p8 FreeBSD 7.1-RELEASE-p8 #2: Fri Oct 30 13:56:41 EDT 2009     root at xxxxxxxxxx.broadinstitute.org:/usr/obj/usr/src/sys/xxxxxxxxxx  amd64
>Description:
When compiling nmap-5.61.t5, it has a compilation error, which outputs the following:

gmake[1]: Entering directory `/usr/ports/security/nmap/work/nmap-5.61TEST5/libnetutil'
c++ -c -I../liblinear -I/usr/include/lua -I/usr/local/include/lua51 -I../libdnet-stripped/include -I/usr/local/include  -I/usr/include -I../nbase -I../nsock/include -DHAVE_CONFIG_H -D_FORTIFY_SOURCE=2 -O -pipe -I/usr/include -Wall -fno-strict-aliasing netutil.cc -o netutil.o
In file included from netutil.cc:127:
/usr/include/netinet/ip.h:162: error: 'n_long' does not name a type
/usr/include/netinet/ip.h:165: error: 'n_long' does not name a type
gmake[1]: *** [netutil.o] Error 1
gmake[1]: Leaving directory `/usr/ports/security/nmap/work/nmap-5.61TEST5/libnetutil'
gmake: *** [netutil_build] Error 2
*** Error code 1

Stop in /usr/ports/security/nmap.
>How-To-Repeat:
portinstall nmap
 - or -
portupgrade nmap
>Fix:
--- libnetutil/netutil.cc.old	2012-03-22 09:51:28.000000000 -0400
+++ libnetutil/netutil.cc	2012-03-22 09:47:20.000000000 -0400
@@ -124,6 +124,7 @@
 #endif
 #endif
 #ifndef NETINET_IP_H  /* This guarding is needed for at least some versions of OpenBSD */
+#include <netinet/in_systm.h>
 #include <netinet/ip.h> 
 #define NETINET_IP_H
 #endif

It just seems that the netinet/in_systm.h include file needs to be present to provide the "n_long" typedef.

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list