|
From: | Stefan Weil |
Subject: | Re: [Qemu-devel] buildbot failure in qemu on disable_kvm_x86_64_debian_5_0 |
Date: | Mon, 04 Jul 2011 18:33:10 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110424 Thunderbird/3.1.10 |
Am 04.07.2011 11:21, schrieb Alexander Graf:
On 04.07.2011, at 07:51, Stefan Weil wrote:Am 04.07.2011 06:23, schrieb Stefan Hajnoczi:On Mon, Jul 4, 2011 at 12:47 AM, Alexander Graf <address@hidden> wrote:On 04.07.2011, at 02:04, address@hidden wrote:The Buildbot has detected a new failure on builder disable_kvm_x86_64_debian_5_0 while building qemu.Full details are available at: http://buildbot.b1-systems.de/qemu/builders/disable_kvm_x86_64_debian_5_0/builds/148 Buildbot URL: http://buildbot.b1-systems.de/qemu/ Buildslave for this Build: b1_qemu_1Build Reason: The Nightly scheduler named 'nightly_disable_kvm' triggered this buildBuild Source Stamp: [branch master] HEAD Blamelist: BUILD FAILED: failed compileIn file included from /usr/include/png.h:438, from ui/vnc-enc-tight.c:40:/usr/include/pngconf.h:326: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token /usr/include/pngconf.h:327: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'include'make: *** [ui/vnc-enc-tight.o] Error 1 program finished with exit code 2Not sure what exactly is missing, but the last change in that code was from Stefan Weil (2fb0c09f4ff036f68474277ed4edc036f6529de8).Daniel, Would it be possible to post the contents of /usr/include/pngconf.h from b1_qemu_1? I checked my local copy and I don't understand these compiler errors. Perhaps you have a different version of the file. Thanks, StefanThe compiler errors come again from the setjmp check in pngconf.h: __pngconf.h__ in libpng already includes setjmp.h; __dont__ include it again.; The buildbot runs Debian Lenny which includes an old version of libpng. That version does not use PNG_SKIP_SETJMP_CHECK to skip the setjmp check. Defining PNG_SETJMP_NOT_SUPPORTED might help with this version, but I still have to test that. Updating the buildbot to Debian Squeeze would also work.So it's a real bug and a good thing the buildbot is running on Lenny. Maybe we should add the define and #include setjmp.h to configure, so at least that one fails when compilation wouldn't work either?Alex
It's a real bug, or at least an incompatibility with libpng. It can be fixed in several ways, for example these: 1 Don't use libpng because it restricts usage of setjmp.h and raises confusing compiler errors instead of a clear #error. Code which needs libpng would have to be removed. 2 Don't use libpng if it fails to accepts the current code (setjmp.h before png.h). This needs a small modification of the libpng check in configure. 3 Define PNG_SETJMP_NOT_SUPPORTED, so Debian Lenny's libpng works, too. Enhancing the libpng in check in configure would be reasonable to avoid more surprises with other variants of libpng. 4 Remove setjmp.h from qemu-common.h. I expected that I would have to add setjmp.h in some source files after this operation, but was surprised that this was not needed. I suggest solution 4 because it is simple, and it also avoids an unnecessary inclusion of setjmp.h in nearly all compiler invocations. Optionally, commit 2fb0c09f4ff036f68474277ed4edc036f6529de8 can be reverted then to detect any use of setjmp.h before png.h. Regards, Stefan
[Prev in Thread] | Current Thread | [Next in Thread] |