Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 517188 - net-misc/dhcpcd-6.4.2 with sys-devel/llvm - Testing for getifaddrs ... no
Summary: net-misc/dhcpcd-6.4.2 with sys-devel/llvm - Testing for getifaddrs ... no
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: William Hubbs
URL:
Whiteboard:
Keywords:
: 523306 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-07-15 20:11 UTC by Mike Lothian
Modified: 2014-10-07 02:39 UTC (History)
5 users (show)

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


Attachments
build.log (build.log,2.93 KB, text/plain)
2014-07-15 20:14 UTC, Mike Lothian
Details
build.log (build.log,2.93 KB, text/plain)
2014-09-19 23:51 UTC, Nikos Chantziaras
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Lothian 2014-07-15 20:11:32 UTC
When emerging dhcpcd-6.4.2 configure tries to use /usr/bin/x86_64-pc-linux-gnu-clang from llvm-9999 and fails because getifaddrs isn't supported 

Doing a quickpkg llvm and uninstalling works around the problem - I reinstalled with emerge -G llvm 

Reproducible: Always
Comment 1 Mike Lothian 2014-07-15 20:14:06 UTC
Created attachment 380768 [details]
build.log
Comment 2 Alex Xu (Hello71) 2014-07-16 00:47:14 UTC
Please attach /var/tmp/portage/net-misc/dhcpcd-6.4.2/work/dhcpcd-6.4.2/config.log (if it exists) and paste emerge --info =net-misc/dhcpcd-6.4.2 as a comment.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2014-07-16 02:29:43 UTC
1) Please post your `emerge --info' output in a comment.
2) Please attach config.log to this bug report.
Comment 4 Nikos Chantziaras 2014-09-19 23:50:40 UTC
I just stumbled across the same problem. The build.log says:

  Configuring dhcpcd for ... linux
  Using compiler .. /usr/bin/x86_64-pc-linux-gnu-clang
  clang version 3.5.0 (tags/RELEASE_350/final)

and then it fails:

  Testing for getifaddrs ... no
  libc support for getifaddrs is required - aborting
Comment 5 Nikos Chantziaras 2014-09-19 23:51:54 UTC
Created attachment 385152 [details]
build.log
Comment 6 Nikos Chantziaras 2014-09-19 23:54:22 UTC
A config.log doesn't exist anywhere in /tmp/portage. Here's "emerge --info dhcpcd":

Portage 2.2.13 (python 3.4.1-final-0, default/linux/amd64/13.0/desktop/kde, gcc-4.8.3, glibc-2.19-r1, 3.14.19-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.14.19-gentoo-x86_64-Intel-R-_Core-TM-_i5-2500K_CPU_@_3.30GHz-with-gentoo-2.2
KiB Mem:    16386332 total,  12944768 free
KiB Swap:   25166912 total,  25166912 free
Timestamp of tree: Fri, 19 Sep 2014 17:45:02 +0000
ld GNU ld (GNU Binutils) 2.24
app-shells/bash:          4.2_p47
dev-lang/python:          2.7.8, 3.3.5-r1, 3.4.1
dev-util/cmake:           3.0.2
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.1
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.11.6, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.3
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2-r1
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.14 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo interactive-fiction steam-overlay qt Local
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-pipe -mtune=native -march=native -O2 -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-pipe -mtune=native -march=native -O2 -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block"
DISTDIR="/mnt/Data/portage/distfiles"
EMERGE_DEFAULT_OPTS="--quiet-build=n"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.ntua.gr/pub/linux/gentoo http://mirror.ovh.net/gentoo-distfiles http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common"
MAKEOPTS="-j4"
PKGDIR="/mnt/Data/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/interactive-fiction /var/lib/layman/steam /var/lib/layman/qt /usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi aes-ni alsa amd64 audiofile avx bash-completion branding bzip2 cairo cdr cli consolekit cracklib crypt cxx dbus declarative dri dts dvd dvdr emboss encode exif fam fbcondecor flac gdbm gif glamor gpm gtk iconv ipv6 jpeg kde kipi lcdfilter lcms libnotify libsamplerate lm_sensors mad mmx mmxext mng modules mp3 mp4 mpeg multilib ncurses nptl nvidia offensive ogg opengl openmp pango pcre pdf pgo phonon plasma png policykit ppds pulseaudio qt4 readline session spell sse sse2 sse3 sse4 sse4_1 ssl ssse3 startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vdpau vorbis wxwidgets x264 xcb xcomposite xml xv xvid xvmc zlib" ABI_X86="32 64" 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" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="plymouth" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="emu efi-32 efi-64 pc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3 python3_4" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="nothing" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USE_PYTHON="3.4 3.3 2.7"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

net-misc/dhcpcd-6.4.4 was built with the following:
USE="ipv6 udev" ABI_X86="64"
Comment 7 Alex Xu (Hello71) 2014-09-20 15:21:47 UTC
*** Bug 523306 has been marked as a duplicate of this bug. ***
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2014-09-20 16:21:36 UTC
It's a custom configure script, so it doesn't spit config.log. But well, everyone can write a good build system, can't they? :)

As for one of the issues, I already pinged WilliamH and suggested to export CC. For the other, we'd need to look what's wrong with the check.
Comment 9 Nikos Chantziaras 2014-09-20 16:34:07 UTC
Note that configuring the vanilla package outside of portage, but using the same configure arguments are portage, works just fine:

$ ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/lib64 --prefix= --libexecdir=/lib/dhcpcd --dbdir=/var/lib/dhcpcd --localstatedir=/var --rundir=/run --enable-ipv6 --with-hook=ntp.conf --with-hook=yp.conf
configure args: --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/lib64 --prefix= --libexecdir=/lib/dhcpcd --dbdir=/var/lib/dhcpcd --localstatedir=/var --rundir=/run --enable-ipv6 --with-hook=ntp.conf --with-hook=yp.conf
Deriving operating system from ... x86_64-pc-linux-gnu
Configuring dhcpcd for ... linux
Using compiler .. /usr/bin/x86_64-pc-linux-gnu-clang
clang version 3.5.0 (tags/RELEASE_350/final)
dhcpcd-definitions.conf will be embedded in dhcpcd itself
Testing for nl80211 ... yes
Testing for getifaddrs ... yes
Testing for clock_gettime ... yes
Testing for inet_ntoa ... yes
Testing for arc4random ... no
Testing for arc4random_uniform ... no
Testing for closefrom ... no
Testing for getline ... yes
Testing for strlcpy ... no
Testing for dprintf ... yes
Testing for TAILQ_FOREACH_SAFE ... no
Testing for TAILQ_CONCAT ...yes
Testing for posix_spawn ... yes
Testing for pollts ... no
Testing for ppoll ... yes
Testing for LOG_PERROR ... yes
Testing for be64enc ... no
Testing for MD5Init ... no
Testing for sha2.h ... no
Testing for SHA256_Init ... no
Testing for SHA256Init ... no
Checking for libudev ... yes
Checking udev_monitor_filter_add_match_subsystem_devtype ... yes
Checking udev_device_get_is_initialized ... yes
Testing for dlopen ... yes (-ldl)
Checking for ntpd ... /usr/sbin/ntpd (50-ntp.conf)
Checking for ypbind ... not found
Finding hook ntp.conf ... 50-ntp.conf
Finding hook yp.conf ... 50-yp.conf

   SYSCONFDIR =         /etc
   SBINDIR =            /sbin
   LIBDIR =             /lib64
   LIBEXECDIR =         /lib/dhcpcd
   DBDIR =              /var/lib/dhcpcd
   RUNDIR =             /run
   MANDIR =             /usr/share/man
   HOOKSCRIPTS =        50-ntp.conf 50-yp.conf
Comment 10 Roy Marples 2014-09-21 10:32:35 UTC
(In reply to Michał Górny from comment #8)
> It's a custom configure script, so it doesn't spit config.log. But well,
> everyone can write a good build system, can't they? :)

Unsure if sarcastic? I dislike the weight that autoconf or cmake brings and the fact I had to "re-learn" autoconf each time it upgraded. As someone already noted it works fine outside of portage, but anyone can write a good packaging system yes? I'll note dhcpcd works fine in pkgsrc when swapping compilers around but I suspect that is not the real issue.

> As for one of the issues, I already pinged WilliamH and suggested to export
> CC. For the other, we'd need to look what's wrong with the check.

http://roy.marples.name/projects/dhcpcd/ci/abf5f67e07b1dfab51fe2547d91e7494083ed4d9?sbs=0

That may help as I've moved the "does CC work" test further down the chain as one of the CPPFLAGS or CFLAGS could be stopping it from working.
I'll work on adding a config.log or something to the configure as well.
Comment 11 Roy Marples 2014-09-21 11:40:48 UTC
(In reply to Roy Marples from comment #10)
> I'll work on adding a config.log or something to the configure as well.

http://roy.marples.name/projects/dhcpcd/ci/8531d2d7941b6e6d36acf15bebf27221d544a7d2?sbs=0

Done. If the OP emerges dhcpcd-9999 then hopefully config.log will shed some light on the matter.
Comment 12 Nikos Chantziaras 2014-09-22 12:22:36 UTC
I emerged 9999 and it worked fine. Then I tried to downgrade to 6.4.5 again, and that now worked fine too; gcc is used for the build and all tests pass with no issues.

I cannot explain what is happening.
Comment 13 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2014-09-22 12:42:44 UTC
(In reply to Nikos Chantziaras from comment #12)
> I emerged 9999 and it worked fine. Then I tried to downgrade to 6.4.5 again,
> and that now worked fine too; gcc is used for the build and all tests pass
> with no issues.
> 
> I cannot explain what is happening.

  20 Sep 2014; William Hubbs <williamh@gentoo.org> dhcpcd-6.4.3.ebuild,
  dhcpcd-6.4.5.ebuild, dhcpcd-9999.ebuild:
  Pass the value of CC as an argument to configure instead of using tc-export.
Comment 14 Nikos Chantziaras 2014-09-22 12:50:01 UTC
Well, I guess it's fixed then.

Though it might be important for people who do actually want to use clang to find  out why the test is failing. If I compile the test manually with clang, it works correctly:

  #include <sys/types.h>
  #include <ifaddrs.h>
  int main(void)
  {
          struct ifaddrs *ifap;
          return getifaddrs(&ifap);
  }

running it by hand will pass the test:

  $ clang getifaddrs.c
  $ if ./a.out; then echo "yes"; fi
  yes

it only fails when emerging.
Comment 15 Roy Marples 2014-09-29 08:34:34 UTC
dhcpcd-6.4.7 is now in the tree, so this issue should now be fixed.