Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 226359 - sys-apps/iproute2-2.6.25.20080417 undefined ref __constant_htons
Summary: sys-apps/iproute2-2.6.25.20080417 undefined ref __constant_htons
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-06-13 13:22 UTC by Derk W te Bokkel
Modified: 2008-06-21 05:49 UTC (History)
3 users (show)

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


Attachments
ip_tunnel.h patch (iproute2-2.6.25.20080417-include-byteorder.patch,368 bytes, patch)
2008-06-20 16:09 UTC, RB
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Derk W te Bokkel 2008-06-13 13:22:53 UTC
after some playing with flags does compile with the minimal flag set. also with minimal berkdb ... Not with berkdb by itself

emerge dies as follows if no flags  or just berkdb are set.


iptunnel.c: In function 'parse_args':
iptunnel.c:108: warning: implicit declaration of function '__constant_htons'
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ip6tunnel.o ip6tunnel.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o tunnel.o tunnel.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipneigh.o ipneigh.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipntable.o ipntable.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o iplink.o iplink.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipmaddr.o ipmaddr.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipmonitor.o ipmonitor.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipmroute.o ipmroute.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipprefix.o ipprefix.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o ipxfrm.o ipxfrm.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o xfrm_state.o xfrm_state.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o xfrm_policy.o xfrm_policy.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o xfrm_monitor.o xfrm_monitor.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o iplink_vlan.o iplink_vlan.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o link_veth.o link_veth.c
i686-pc-linux-gnu-gcc -D_GNU_SOURCE -O2 -march=i686 -pipe -Wstrict-prototypes -Wall -I../include -DRESOLVE_HOSTNAMES   -c -o rtmon.o rtmon.c
i686-pc-linux-gnu-gcc -Wl,-export-dynamic  rtmon.o ../lib/libnetlink.a ../lib/libutil.a  -lresolv -L../lib -lnetlink -lutil -ldl -o rtmon
i686-pc-linux-gnu-gcc -Wl,-export-dynamic  ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o iplink_vlan.o link_veth.o ../lib/libnetlink.a ../lib/libutil.a  -lresolv -L../lib -lnetlink -lutil -ldl -o ip
iptunnel.o: In function `parse_args':
iptunnel.c:(.text+0x2f6): undefined reference to `__constant_htons'
iptunnel.c:(.text+0x434): undefined reference to `__constant_htons'
iptunnel.c:(.text+0x4c1): undefined reference to `__constant_htons'
iptunnel.c:(.text+0x4da): undefined reference to `__constant_htons'
iptunnel.c:(.text+0x51c): undefined reference to `__constant_htons'
iptunnel.o:iptunnel.c:(.text+0x535): more undefined references to `__constant_htons' follow
collect2: ld returned 1 exit status
make[1]: *** [ip] Error 1



 The specific snippet of code:
 *       emake CC="$(tc-getCC)" AR="$(tc-getAR)" || die "make"


I tried reemerging linux headers as well

emerge --info

Portage 2.1.4.4 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25-gentoo-r4 i686)
=================================================================
System uname: 2.6.25-gentoo-r4 i686 AMD Athlon(tm) XP 2500+
Timestamp of tree: Thu, 12 Jun 2008 19:00:01 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r13
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="C"
LINGUAS="en en_GB en_US en_ZA fr nl"
MAKEOPTS="-j2"
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.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa ao audacious berkdb cdr cdrom cli cracklib crypt cups dbus dri dvd dvdr ffmpeg firefox flac fortran gdbm gnome gphoto2 gpm hal iconv ipv6 isdnlog java javascript jpeg lm_sensors mad midi mp3 mp4 mp4live mpeg mpeg2 mplayer mudflap ncurses nls nptl nptlonly nsplugin ofx ogg opengl openmp pam pcre perl png ppds pppd python readline reflection samba scanner session slp spl ssl tcpd unicode usb vorbis win32codecs wma wmp x86 xorg xv 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" LINGUAS="en en_GB en_US en_ZA fr nl" USERLAND="GNU" VIDEO_CARDS="nv fbdev vesa glint ati i810 sis via v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


Reproducible: Always

Steps to Reproduce:
1.see above
2.
3.
Comment 1 Liganic 2008-06-14 14:59:46 UTC
Same here with: emerge --info
Portage 2.1.4.4 (default/linux/amd64/2008.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25-tuxonice-r4 x86_64)
=================================================================
System uname: 2.6.25-tuxonice-r4 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz
Timestamp of tree: Sat, 14 Jun 2008 14:15:02 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r13
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo "
LANG="de_DE.utf8"
LC_ALL="de_DE.utf8"
LINGUAS="de"
MAKEOPTS="-j2"
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"
PORTDIR_OVERLAY="/usr/portage/local/layman/energizedwork /usr/portage/local/layman/sajinet /usr/portage/local/layman/desktop-effects /usr/portage/local/layman/gnash-cvs /usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac aalib acl acpi additions agg alsa amarok amd64 avahi bacula-split-init bash-completion berkdb binfilter bluetooth bzip2 cairo cddb cdr cli client-only colordiff cracklib crypt cups curl cvs dbus dell disk-partition dmi dri dvd dvdr dvdread dvi encode esd evo exif extensions fam ffmpeg firefox flac fortran ftp gcj gdbm gif glitz glsa gnome gnome-keyring gnome-print gpm grub gstreamer gtk gtk2 hal hddtemp http hvm ical iconv icq id3 ieee1394 imagemagick imap inotify inquisitio ipw3945 irda irmc isdnlog ithreads java java6 jpeg kdepim keyring l7filter lame laptop latex libnotify lirc lm_sensors logitech-mouse mad mailbox maildir maps mbox mdnsresponder-compat midi mmx mp3 mp4 mpeg mplayer mudflap multilib nautilus ncurses nls nptl nptlonly nsplugin ntfs obex ogg opengl openmp pam password pcmcia pcre pda pdf perl pidgin pink pmu png pop portage posix ppds pppd python qt3 qt3support qt4 quicktime rar readline recode reflection reiser4 reiserfs samba session slp smp sms sound spell spl sse sse2 ssl ssse3 stream subversion svg svgz sysfs syslog tcpd tetex theora thunderbird tiff tordns truetype udev unicode usb vim vim-pager vim-syntax vorbis wifi wmf wxwindows x264 xcomposite xine xinerama xorg xosd xv xvid zlib" ALSA_CARDS="hda-intel" 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="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="nvidia vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 RB 2008-06-20 16:09:20 UTC
Created attachment 157799 [details, diff]
ip_tunnel.h patch

It's the 'new' include/ structure that differs from the files in /usr/include; include/linux/ip_tunnel.h doesn't include asm/byteorder.h, which eventually defines __constant_htons.

This patch makes the minor change necessary, but may not be all that's eventually needed if iproute2 continues to carry around its own headers.