From: Wei Liu <wei.liu2@citrix.com>
To: "Marek Marczykowski-Górecki" <marmarek@invisiblethingslab.com>
Cc: Wei Liu <wei.liu2@citrix.com>, xen-devel <xen-devel@lists.xen.org>
Subject: Re: Stubdom compilation failure on Fedora 24 beta
Date: Fri, 13 May 2016 14:33:41 +0100 [thread overview]
Message-ID: <20160513133341.GR27070@citrix.com> (raw)
In-Reply-To: <20160513123521.GO1171@mail-itl>
Hi Marek
On Fri, May 13, 2016 at 02:35:21PM +0200, Marek Marczykowski-Górecki wrote:
> Hi,
>
> I'm trying to build Xen 4.6.1 on Fedora 24 beta. Since gcc 6, I need to pull
> some patches from unstable, but then I hit some strange problem:
>
> During configure run in stubdom/gmp-x86_64 I've got:
>
> checking size of unsigned short... configure: error: cannot compute sizeof (unsigned short)
> See `config.log' for more details.
>
> It turned out the failing line in conftest is:
>
> return ferror (f) || fclose (f) != 0;
>
> ferror(f) returned 1.
> That's strange, when running under gdb, manually checking ferror(f) (`p
> ferror(f)`) returns 0. So I've looked at code produced (after slight
> modification to have "if (ferror(f)) ..."), ferror(f) was turned to:
>
> 0x000000000040063d <+55>: testb $0x40,0x10(%rbx)
>
> This doesn't look like ferror from glibc. And 0x40 is not _IO_ERR_SEEN (0x20).
>
> This looks like ferror from newlib (stubdom/newlib-1.16.0/newlib/libc/include/stdio.h):
>
> #define __SERR 0x0040 /* found error */
> #define __sferror(p) (((p)->_flags & __SERR) != 0)
> #define ferror(p) __sferror(p)
>
Yes, it should be from newlib. This is expected because stubdom uses
newlib after all.
>
> Configure is called this way (stubdom/Makefile):
> cd $@; CPPFLAGS="-isystem $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/include $(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" CC=$(CC) $(GMPEXT) ./configure --disable-shared --enable-static --disable-fft --without-readline --prefix=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf
>
> And indeed $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/include contains headers
> from newlib.
>
> Any idea how to fix this? And why it was working before?
>
You're not the first one that got bitten by this.
Search for
Error compiling Xen in configuring stubdom/gmp with glibc-2.23 on Arch Linux
or message-id
<1457311127.3237075.541322218.485CFC99@webmail.messagingengine.com>
in xen-users@ archive.
The thread contains some analysis, but it's not yet complete.
There are two possibilities that I can think of off the top of my head:
1. the cross-build environment is buggy 2. newlib bit-rots too much.
The first requires fixing the build environment, the second requires
patching newlib (preferable imo) or upgrading it to a newer version.
It's on our radar but Ian and I are working on other things at the
moment.
Wei.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
prev parent reply other threads:[~2016-05-13 13:33 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-13 12:35 Stubdom compilation failure on Fedora 24 beta Marek Marczykowski-Górecki
2016-05-13 13:33 ` Wei Liu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160513133341.GR27070@citrix.com \
--to=wei.liu2@citrix.com \
--cc=marmarek@invisiblethingslab.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).