Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 92002 - iptraf 2.7.0-r1 fails to compile
Summary: iptraf 2.7.0-r1 fails to compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Netmon project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-09 06:10 UTC by Ryan Bair
Modified: 2005-10-31 21:07 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Partial patch to minimize #define mess (iptraf.diff,553 bytes, patch)
2005-06-25 14:54 UTC, Kamil Burzynski
Details | Diff
iptraf-2.7.0-2.6.patch-30408.out (iptraf-2.7.0-2.6.patch-30408.out,6.89 KB, text/plain)
2005-07-18 08:20 UTC, Gustavo Felisberto (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Bair 2005-05-09 06:10:58 UTC
When trying to emerge iptraf 2.7.0 or higher I get the following build error:
iptraf.c:30:19: panel.h: No such file or directory
In file included from iptraf.c:39:
../support/menurt.h:35: error: syntax error before "PANEL"

Reproducible: Always
Steps to Reproduce:
1.emerge iptraf
2.
3.




Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.4, glibc-2.3.4.20040808-r1,
2.6.11-gentoo-r6 i686)
=================================================================
System uname: 2.6.11-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 1.60GHz
Gentoo Base System version 1.4.16
Python:              dev-lang/python-2.3.4 [2.3.4 (#1, Jan  9 2005, 00:51:13)]
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[disabled]dev-lang/python:     2.3.4
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.5
sys-devel/binutils:  2.15.90.0.1.1-r3
sys-devel/libtool:   1.5.2-r7
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://mirrors.tds.net/gentoo"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acpi aim alsa apm arts avi berkdb bitmap-fonts cdr crypt cups curl
directfb divx4linux dvd emboss encode esd fam flac foomaticdb fortran gdbm gif
gnome gpm gstreamer gtk gtk2 hal imagemagick imlib ipv6 java jpeg kde libg++
libwww mad mikmod mmx motif mp3 mpeg msn mysql ncurses nls nvidia ogg oggvorbis
openal opengl oscar oss pam pdflib perl php png python qt quicktime readline
ruby sdl spell sse ssl svga tcpd tetex tiff truetype truetype-fonts type1-fonts
usb videos vidix vorbis win32codecs x86 xine xinerama xml2 xmms xv zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Ryan Bair 2005-05-09 07:59:21 UTC
Well to post the solution to my own bug, upgrading ncurses from 5.4-r5 to 5.4-r6 fixed the problem. Perhaps it should be added to the ebuild that 5.4-r5 should be upgraded to r6. 
Comment 2 Marcelo Goes (RETIRED) gentoo-dev 2005-06-25 14:16:36 UTC
I tested both versions of ncurses and could not reproduce your problem... 
Comment 3 Kamil Burzynski 2005-06-25 14:53:14 UTC
I confirm, that the problem is there - it appears on my system, too. My system
uses amd64, and it is probably just adding some mess into compile system.

After some debugging, it seems, that there is a big #define/typedef mess. The
original problem is that <linux/if.h> #define's IFF_UP to 0x01, while some other
file does enum { IFF_UP = 0x01; }, which preprocessor transforms into enum {
0x01 = 0x01; };. It is done due to __USE_MISC existence, chained from __USE_BSD
(which compiler defined, because there were no other defines present - quite a
mess). Defining -D_POSIX_C_SOURCE gets rid of __USE_MISC, but other problems are
appearing - notably, <sys/types.h> does not work somehow (missing typedef
__u_char u_char). <sys/types.h> seem to disappear completely on some #ifdef
guard. Using <rpc/types.h> helps a little, but then some redefinition of int64_t 
appears.. I stopped debugging at this step. Results of my reasearch are in
attachment.
Comment 4 Kamil Burzynski 2005-06-25 14:54:26 UTC
Created attachment 61927 [details, diff]
Partial patch to minimize #define mess

Partial work (and already containing some workarounds).
More info in bug comments.
Comment 5 Jan Van Uytven 2005-07-08 13:25:42 UTC
I also get errors when attempting to compile iptraf-2.7.0:

Calculating dependencies ...done!
>>> emerge (1 of 1) net-analyzer/iptraf-2.7.0-r1 to /
>>> md5 files   ;-) iptraf-2.7.0-r1.ebuild
>>> md5 files   ;-) files/digest-iptraf-2.7.0-r1
>>> md5 files   ;-) files/iptraf-2.7.0-atheros.patch
>>> md5 src_uri ;-) iptraf-2.7.0.tar.gz
>>> md5 src_uri ;-) iptraf-2.7.0-ipv6-alpha11.diff
>>> Unpacking source...
>>> Unpacking iptraf-2.7.0.tar.gz to /var/tmp/portage/iptraf-2.7.0-r1/work
 * Applying iptraf-2.7.0-atheros.patch ...                                [ ok ]
 * Applying iptraf-2.7.0-ipv6-alpha11.diff ...                            [ ok ]
>>> Source unpacked.
rm -f *.o *~ core iptraf rvnamed rawtime cfconv
make -C ../support clean
make[1]: Entering directory
`/var/tmp/portage/iptraf-2.7.0-r1/work/iptraf-2.7.0/support'
rm -rf *.o *~ libtextbox.a libtextbox.so
make[1]: Leaving directory
`/var/tmp/portage/iptraf-2.7.0-r1/work/iptraf-2.7.0/support'
gcc -mcpu=athlon-xp -O3 -pipe -DWORKDIR=\"/var/lib/iptraf\"
-DLOGDIR=\"/var/log/iptraf\" -DEXECDIR=\"/usr/sbin\" -I/usr/include/ncurses
-I../support -DVERSION=\"2.7.0\" -DPLATFORM=\"Linux/i386\"     -c -o iptraf.o
iptraf.c
In file included from tcptable.h:27,
                 from iptraf.c:54:
/usr/include/net/if.h:45: error: syntax error before numeric constant
/usr/include/net/if.h:111: error: redefinition of `struct ifmap'
/usr/include/net/if.h:126: error: redefinition of `struct ifreq'
/usr/include/net/if.h:176: error: redefinition of `struct ifconf'
make: *** [iptraf.o] Error 1
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2005-07-12 11:35:22 UTC
Comment #5 is a different bug - see Bug 89458
Comment 7 Gustavo Felisberto (RETIRED) gentoo-dev 2005-07-18 08:20:12 UTC
Created attachment 63708 [details]
iptraf-2.7.0-2.6.patch-30408.out

emerge iptraf
Calculating dependencies ...done!
>>> emerge (1 of 1) net-analyzer/iptraf-2.7.0-r1 to /
>>> md5 files	;-) iptraf-2.7.0-r1.ebuild
>>> md5 files	;-) files/digest-iptraf-2.7.0-r1
>>> md5 files	;-) files/iptraf-2.7.0-2.6.patch
>>> md5 files	;-) files/iptraf-2.7.0-atheros.patch
>>> md5 src_uri ;-) iptraf-2.7.0.tar.gz
>>> md5 src_uri ;-) iptraf-2.7.0-ipv6-alpha11.diff
>>> Unpacking source...
>>> Unpacking iptraf-2.7.0.tar.gz to /var/tmp/portage/iptraf-2.7.0-r1/work
 * Applying iptraf-2.7.0-atheros.patch ...				       
							  [ ok ] * Applying
iptraf-2.7.0-ipv6-alpha11.diff ...					       
					      [ ok ] * Applying
iptraf-2.7.0-2.6.patch ...

 * Failed Patch: iptraf-2.7.0-2.6.patch !
 *  ( /usr/portage/net-analyzer/iptraf/files/iptraf-2.7.0-2.6.patch )
Comment 8 Marco Morales 2005-10-16 23:23:05 UTC
any new ideas around? :P
Comment 9 SpanKY gentoo-dev 2005-10-31 21:07:39 UTC
sounds good