Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 227549

Summary: dev-libs/http-fetcher-1.1.0 fails to build with glibc 2.8
Product: Gentoo Linux Reporter: Evil Compile Person <bugs>
Component: New packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED FIXED    
Severity: normal CC: academic.sam, flameeyes
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 225459    
Attachments: Add -D_GNU_SOURCE to cppflags to compile with glibc-2.8

Description Evil Compile Person 2008-06-16 17:53:04 UTC
x86_64-pc-linux-gnu-gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"http_fetcher\" -DVERSION=\"1.1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_SELECT=1 -I. -I. -I../include -O2 -pipe -DHAVE_HSTRERROR -ansi -pedantic -Wall -c http_fetcher.c -MT http_fetcher.lo -MD -MP -MF .deps/http_fetcher.TPlo  -fPIC -DPIC -o .libs/http_fetcher.o
http_fetcher.c: In function 'http_fetch':
http_fetcher.c:124: warning: implicit declaration of function 'snprintf'
http_fetcher.c: In function 'http_perror':
http_fetcher.c:611: warning: implicit declaration of function 'herror'
http_fetcher.c:626: warning: assignment discards qualifiers from pointer target type
http_fetcher.c: In function 'http_strerror':
http_fetcher.c:660: warning: implicit declaration of function 'hstrerror'
http_fetcher.c:660: warning: return makes pointer from integer without a cast
http_fetcher.c: In function 'makeSocket':
http_fetcher.c:781: error: 'struct hostent' has no member named 'h_addr'
make[1]: *** [http_fetcher.lo] Error 1
make[1]: Leaving directory `/var/tmp/portage/dev-libs/http-fetcher-1.1.0/work/http_fetcher-1.1.0/src'
make: *** [all-recursive] Error 1
 *
 * ERROR: dev-libs/http-fetcher-1.1.0 failed.

Portage 2.1.4.4 (default-linux/amd64/2007.0, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.25.1 x86_64)
=================================================================
System uname: 2.6.25.1 x86_64 unknown
Timestamp of tree: Fri, 13 Jun 2008 19:45:01 +0000
app-shells/bash:     3.2_p39
dev-lang/python:     2.5.2-r4
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.62
sys-devel/automake:  1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.4
virtual/os-headers:  2.6.25-r4
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildpkg distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://216.165.129.134/gentoo http://gentoo.mirrors.tds.net/gentoo http://gentoo.osuosl.org/"
LANG="en_US"
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://208.71.112.51/gentoo-portage"
USE="X acl amd64 berkdb cli cracklib crypt cups dri fortran gcj gdbm gpm iconv ipv6 isdnlog midi mmx mudflap ncurses nls nptl nptlonly objc openmp pam pcre perl pppd python readline reflection session spl sse sse2 ssl tcpd unicode xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="vga"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Daniel Anderson 2008-06-17 07:34:28 UTC
Um... works for me. From the output, I'm guessing it's a glibc issue.  struct hostent (part of glibc) should have the h_addr member.

# emerge --info

Portage 2.1.4.4 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.7-r2, 2.6.24-gentoo-r4 x86_64)
=================================================================
System uname: 2.6.24-gentoo-r4 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 6000+
Timestamp of tree: Sat, 14 Jun 2008 01:02:01 +0000
ccache version 2.4 [disabled]
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="-O2 -Wall -pipe -march=athlon64 -msse3 -m3dnow"
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"
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="-O2 -Wall -pipe -march=athlon64 -msse3 -m3dnow"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gentoo.osuosl.org/ ftp://ftp.gtlib.gatech.edu/pub/gentoo http://www.gtlib.gatech.edu/pub/gentoo "
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"
PORTDIR_OVERLAY="/usr/portage/local/layman/pro-audio /usr/portage/local/layman/java-overlay /usr/portage/local/layman/java-experimental /usr/portage/local/layman/science /usr/portage/local/layman/vmware"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow X Xaw3d aac acl acpi alsa amd64 apache2 arts berkdb cddb cdr clamav cli cracklib crypt cups dri dts dvd dvdnav dvdr ffmpeg fortran gdbm gif ginac gpm hal hardened iconv ieee1394 imagemagick ipv6 isdnlog jpeg jpeg2k kde kerberos latex midi mmx mp3 mp4 mpeg mplayer mudflap ncurses nls nptl nptlonly nsplugin nvidia ogg opengl openmp pam pcre perl png pppd python qt3 qt4 readline reflection rtf samba sdl session smp spl sse sse2 sse3 ssl tcpd threads tiff unicode usb vim-syntax vorbis xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS:t
Comment 2 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2008-06-18 00:48:18 UTC
Blocking the glibc-2.8 tracker because a) WORKSFORME and b) comment #1
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2008-11-16 13:37:51 UTC
*** Bug 240210 has been marked as a duplicate of this bug. ***
Comment 4 Sam Iam 2008-11-23 20:52:16 UTC
After googling about this, I tried 'CFLAGS="-D_GNU_SOURCE" ./configure' in the workdir and compilation succeeds. Not sure how to incorporate this to the ebuild.

I'm using glibc 2.8 and gcc 4.3.2

Sam

Comment 5 Sam Iam 2008-11-25 20:44:33 UTC
Created attachment 173389 [details, diff]
Add -D_GNU_SOURCE to cppflags to compile with glibc-2.8

Figured out how to use append-cppflags in an ebuild.
Comment 6 Sam Iam 2008-11-25 20:51:29 UTC
(In reply to comment #5)
> Created an attachment (id=173389) [edit]
> Add -D_GNU_SOURCE to cppflags to compile with glibc-2.8
> 
> Figured out how to use append-cppflags in an ebuild. 
> 

Oops.. I actually used append-flags. I think I should have used append-cppflags. It still compiles. Not exactly sure about the difference.
Comment 7 SpanKY gentoo-dev 2009-01-14 03:21:31 UTC
dont need gnu source ... just remove the dumb strict code building (-pedantic)

http://sources.gentoo.org/dev-libs/http-fetcher/http-fetcher-1.1.0.ebuild?r1=1.6&r2=1.7