Home | Docs | Forums | Lists | Bugs | Planet | Store | GMN | Get Gentoo!
Not eligible to see or edit group visibility for this bug.
View Bug Activity | Format For Printing | XML | Clone This Bug
gcc -O2 -fomit-frame-pointer -m32 -march=i686 -DNDEBUG -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -mno-tls-direct-seg-refs -D_GNU_SOURCE -Werror -Wmissing-prototypes -fno-strict-aliasing -I. -I../xenstore -Wp,-MD,.xc_core_x86.o.d -c -o xc_core_x86.o xc_core_x86.c cc1: warnings being treated as errors xc_core.c: In function 'xc_core_shdr_get': xc_core.c:195: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false make[2]: *** [xc_core.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools/libxc' make[1]: *** [build] Error 2 make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools/libxc' make: *** [all] Error 2 make: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools' * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 129: Called die * * compile failed * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-emulation/xen-tools-3.1.0/temp/build.log'. * * Messages for package sys-kernel/xen-sources-2.6.20-r2: * As of 2.6.13 the support for devfs has been removed. * You will be required to either manage a static /dev * or to ensure that udev is starting on boot. * Messages for package app-emulation/xen-tools-3.1.0: * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 129: Called die * * compile failed Reproducible: Always Steps to Reproduce: 1.emerge xen-tools 2. 3. Actual Results: gcc -O2 -fomit-frame-pointer -m32 -march=i686 -DNDEBUG -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -mno-tls-direct-seg-refs -D_GNU_SOURCE -Werror -Wmissing-prototypes -fno-strict-aliasing -I. -I../xenstore -Wp,-MD,.xc_core_x86.o.d -c -o xc_core_x86.o xc_core_x86.c cc1: warnings being treated as errors xc_core.c: In function 'xc_core_shdr_get': xc_core.c:195: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false make[2]: *** [xc_core.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools/libxc' make[1]: *** [build] Error 2 make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools/libxc' make: *** [all] Error 2 make: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools' * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 129: Called die * * compile failed * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-emulation/xen-tools-3.1.0/temp/build.log'. * * Messages for package sys-kernel/xen-sources-2.6.20-r2: * As of 2.6.13 the support for devfs has been removed. * You will be required to either manage a static /dev * or to ensure that udev is starting on boot. * Messages for package app-emulation/xen-tools-3.1.0: * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 129: Called die * * compile failed Expected Results: xen-tools merged. gcc says that warnings are treated as errors ... could this be why?
(In reply to comment #0) > gcc says that warnings are treated as errors ... could this be why? Sure, -Werror is a retarded flag.
Please post the output of emerge --info.
I run into the same error. (Even if I put FEATURES="-distcc" MAKEOPTS="-j1" and regardless of having USE="custom-cflags" or not) emerge --info Portage 2.1.3.9 (default-linux/x86/2006.1/desktop, gcc-4.2.0, glibc-2.6.1-r0, 2.6.22-gentoo-r6 i686) ================================================================= System uname: 2.6.22-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz Timestamp of tree: Mon, 10 Sep 2007 12:20:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] app-shells/bash: 3.2_p17-r1 dev-java/java-config: 1.3.7, 2.0.33-r1 dev-lang/python: 2.4.4-r5, 2.5.1-r2 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.10-r4 sys-apps/sandbox: 1.2.18.1 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 sys-devel/binutils: 2.18.50.0.1 sys-devel/gcc-config: 1.4.0-r2 sys-devel/libtool: 1.5.24 virtual/os-headers: 2.6.22-r2 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O3 -msse2 -mfpmath=sse -mno-tls-direct-seg-refs" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=pentium4 -O3 -msse2 -mfpmath=sse -mno-tls-direct-seg-refs" DISTDIR="/usr/portage/distfiles" FEATURES="distcc distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.informatik.rwth-aachen.de/pub/Linux/gentoo http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo" LANG="de_DE" LC_ALL="de_DE" LINGUAS="de" MAKEOPTS="-j25" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/iwm /usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi additions ads alsa amr apache2 artworkextra asf async audacious avahi bash-completion beagle berkdb bitmap-fonts bluetooth browserplugin bzip2 cairo caps capslib cddb cdr cli cracklib crypt cups curl daap dbus djvu dri dts dvd dvi eds emboss encode esd exif expat fam fbcon ffmpeg fftw firefox flac fluidsynth fortran gdbm gif gimpprint glitz gnome gnutls gpm gs gstreamer gtk gtkhtml gzip hal hddtemp ical iconv imagemagick imlib isdnlog jack jack-tmpfs java jit jpeg jpeg2k kerberos lash ldap libnotify lm_sensors logrotate mad midi mikmod mmap mmx mng mono mp3 mp4 mpeg mpm-worker mudflap musicbrainz mysql nautilus ncurses network nls nptl nptlonly nsplugin offensive ogg opengl openmp pam pcre pdf perl png postgres ppds pppd pygrub python qmail qt3 qt4 quicktime quota quotas readline real reflection rle rrdcgi samba sasl screen sdl seamonkey sensord session slang smp sms smt sndfile sound spell spl sqlite sse sse2 ssl svg swat t1lib tagwriting tcl tcltk tcpd theora threads tidy tiff tk truetype truetype-fonts type1-fonts unicode urandom usb v4l v4l2 vcd vditool vidix vorbis webdav win32codecs wmf wrapper x264 x86 xcomposite xine xml xml2 xorg xpm xprint xscreensaver xv xvid xvmc xxmc zlib" ALSA_CARDS="intel8x0" 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" CAMERAS="canon ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="i810 radeon" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Looks like you have GCC 4.2 which is apparently being picky where other compilers were not. Until I get this patched just use gcc 4.1 or earlier.
Another workaround would be to append "-Wno-error" to CFLAGS and CXXFLAGS.
(In reply to comment #5) > Another workaround would be to append "-Wno-error" to CFLAGS and CXXFLAGS. Nope, that's not an option. The Makefiles in the xen-tools subdirs all set: CFLAGS += "-Werror" and "-Werror" seems to have precedence over an concurrently set "-Wno-error" I'll wait for a patch that actually fixes the code constraints, since I currently only have gcc-4.2.0 on my machine and I'm in no hurry with xen (still waiting for my Core2 Quad to arrive ;o) Regards, Torsten
(In reply to comment #6) > (In reply to comment #5) > > Another workaround would be to append "-Wno-error" to CFLAGS and CXXFLAGS. > > Nope, that's not an option. The Makefiles in the xen-tools subdirs all set: > > CFLAGS += "-Werror" > and "-Werror" seems to have precedence over an concurrently set "-Wno-error" OK.
Created an attachment (id=130851) [edit] app-emulation/xen-tools/files/xen-tools-3.1.0-delete-Werror.patch
Created an attachment (id=130853) [edit] Patch to app-emulation/xen-tools/xen-tools-3.1.0.ebuild
(In reply to comment #8) > Created an attachment (id=130851) [edit] > app-emulation/xen-tools/files/xen-tools-3.1.0-delete-Werror.patch Hmm, that's a quick fix indeed. No offense, but wouldn't it be better to check the code that produces the warning? I know this might not be as trivial as stripping the CFLAGS, but the compiler warns about a mathematical tautology, which should be resolvable (and resolved) in xen-tool's code itself... In fact, it seems to me that someone who forcibly adds "-Werror" to my CFLAGS wants it to stay there for a good reason, don't you think?
(In reply to comment #10) > (In reply to comment #8) > > Created an attachment (id=130851) [edit] > > app-emulation/xen-tools/files/xen-tools-3.1.0-delete-Werror.patch > > Hmm, that's a quick fix indeed. No offense, but wouldn't it be better to check > the code that produces the warning? I know this might not be as trivial as > stripping the CFLAGS, but the compiler warns about a mathematical tautology, > which should be resolvable (and resolved) in xen-tool's code itself... > > In fact, it seems to me that someone who forcibly adds "-Werror" to my CFLAGS > wants it to stay there for a good reason, don't you think? > I have been meaning to look into the code to see if there is a potential bug that gcc is finding or if it is bogus and just haven't gotten to it yet. I plan on either fixing up the code to make gcc happy or silencing that warning. Been busy with another xen bug though, but I'll get to this soon :-)
(In reply to comment #10) > wouldn't it be better to check the code that produces the warning? OK. I'm now checking this code and I see: ... #define SHDR_INC 4 ... Elf64_Shdr* xc_core_shdr_get(struct xc_core_section_headers *sheaders) { Elf64_Shdr *shdr; if ( sheaders->num == sheaders->num_max ) { Elf64_Shdr *shdrs; if ( sheaders->num_max + SHDR_INC < sheaders->num_max ) <- Line 195 { errno = E2BIG; return NULL; } sheaders->num_max += SHDR_INC; shdrs = realloc(sheaders->shdrs, sizeof(sheaders->shdrs[0]) * sheaders->num_max); if ( shdrs == NULL ) return NULL; sheaders->shdrs = shdrs; } shdr = &sheaders->shdrs[sheaders->num]; sheaders->num++; memset(shdr, 0, sizeof(*shdr)); return shdr; } ... I also see information about -fstrict-overflow in http://gcc.gnu.org/gcc-4.2/changes.html. Deletion of -Werror is the only portable solution. > In fact, it seems to me that someone who forcibly adds "-Werror" to my > CFLAGS wants it to stay there for a good reason, don't you think? He/She wants to irritate users :) .
> OK. I'm now checking this code and I see: > if ( sheaders->num_max + SHDR_INC < sheaders->num_max ) <- Line 195 > > In fact, it seems to me that someone who forcibly adds "-Werror" to my > > CFLAGS wants it to stay there for a good reason, don't you think? > > He/She wants to irritate users :) . Mama, mama - a geek hit me! ;o))) Ok, by looking at gcc's changes page I (albeit my lack of C-knowledge) believe you're right and the code would be safe to compile without "-Werror". The reason why I'm so concerned about all this is, btw., that I plan to use xen in a highly virtualized server environment (10+ virtual servers per host) with high availability needs. Therefore, stability of the codebase is an important issue... But, in any case, thank you! Torsten
Created an attachment (id=130878) [edit] Patch to app-emulation/xen-tools/xen-tools-3.1.0.ebuild
(In reply to comment #14) > Created an attachment (id=130878) [edit] > Patch to app-emulation/xen-tools/xen-tools-3.1.0.ebuild This patch is safer. It only disables warnings concerning signed overflow.
(In reply to comment #6) > (In reply to comment #5) > > Another workaround would be to append "-Wno-error" to CFLAGS and CXXFLAGS. > > Nope, that's not an option. The Makefiles in the xen-tools subdirs all set: > > CFLAGS += "-Werror" > and "-Werror" seems to have precedence over an concurrently set "-Wno-error" > > I'll wait for a patch that actually fixes the code constraints, since I > currently only have gcc-4.2.0 on my machine and I'm in no hurry with xen (still > waiting for my Core2 Quad to arrive ;o) > > Regards, > Torsten > (!)Confirmed your workaround(!): it builds fine under gcc-4.1.2. The xen package builds fine with gcc-4.2.0.
(In reply to comment #15) > (In reply to comment #14) > > Created an attachment (id=130878) [edit] > > Patch to app-emulation/xen-tools/xen-tools-3.1.0.ebuild > > This patch is safer. It only disables warnings concerning signed overflow. Thanks - worked perfectly. So, to get this straight: in principle the patch (at least in that concern) simulates the behavior of pre gcc-4.2 while using gcc-4.2?
(In reply to comment #17) > in principle the patch (at least in that concern) simulates the behavior of > pre gcc-4.2 while using gcc-4.2? I think so.
Adding myself, I hope this can be committed soon.
Xen, ping? :-) -r1 still fails.
*** Bug 194138 has been marked as a duplicate of this bug. ***
Same package, similar problem. building 'ptsname' extension creating build/temp.linux-x86_64-2.5/ptsname gcc -fno-strict-aliasing -O2 -fomit-frame-pointer -m64 -DNDEBUG -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fPIC -I../../tools/libxc -I../../tools/xenstore -Iptsname -I/usr/include/python2.5 -c ptsname/ptsname.c -o build/temp.linux-x86_64-2.5/ptsname/ptsname.o -fno-strict-aliasing -Werror x86_64-pc-linux-gnu-gcc -pthread -shared -O2 -fomit-frame-pointer -m64 -DNDEBUG -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE build/temp.linux-x86_64-2.5/ptsname/ptsname.o -L../../tools/libxc -L../../tools/xenstore -L/usr/lib64 -lxenctrl -lxenguest -lxenstore -lpython2.5 -o build/lib.linux-x86_64-2.5/xen/lowlevel/ptsname.so make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools/python' make: *** [all] Error 2 make: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-3.1.0/work/xen-3.1.0-src/tools' * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 137: Called die * * compile failed * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-emulation/xen-tools-3.1.0/temp/build.log'. * This ebuild is from an overlay: '/usr/local/portage/' * * Messages for package app-emulation/xen-tools-3.1.0: * * ERROR: app-emulation/xen-tools-3.1.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * xen-tools-3.1.0.ebuild, line 137: Called die * * compile failed * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-emulation/xen-tools-3.1.0/temp/build.log'. * This ebuild is from an overlay: '/usr/local/portage/' * Added the attached patch (thus the overlay). Consistently reproducible with 3.1.0 and 3.1.0-r1. Worked fine during the initial install (while chrooted from the install CD), but can't recompile to save my life. emerge --info: Portage 2.1.3.9 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.5-r4, 2.6.20-xen-r4 x86_64) ================================================================= System uname: 2.6.20-xen-r4 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ Timestamp of tree: Sun, 30 Sep 2007 14:50:01 +0000 app-shells/bash: 3.2_p17 dev-lang/python: 2.4.4-r5, 2.5.1-r2 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.9-r2 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.61-r1 sys-devel/automake: 1.9.6-r2, 1.10 sys-devel/binutils: 2.17-r1 sys-devel/gcc-config: 1.3.16 sys-devel/libtool: 1.5.24 virtual/os-headers: 2.6.21 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="buildpkg distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://mirrors.tera-byte.com/pub/gentoo http://gentoo.mirrors.tds.net/gentoo " MAKEOPTS="-j3" PKGDIR="/srv/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="acl acpi amd64 apache2 berkdb bitmap-fonts cli cracklib crypt dbus dri fortran gdbm hal iconv isdnlog lvm midi mmx mudflap mysql ncurses nls nptl nptlonly openmp pam pcre perl pppd python readline reflection session spl sse sse2 ssl tcpd threads truetype-fonts type1-fonts unicode usb xml xorg" 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" 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: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Should mention that I've tried with GCC 4.1.1 and 4.1.2, and both fail.
And, I fixed it. Another casualty of the libexpat.so.0 problem. I had one package (1!), xgettext, which was causing a module (tools/python/xen/xm) to fail farther up than the last one listed on the error stack due to expat breakage. Lesson for you all: revdep-rebuild. Sorry for the extra verbiage on the bug report.
Updated xen-tools-3.1.0-r1 to add -fno-strict-overflow when it can. Sorry for the delay.