All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Weil <sw@weilnetz.de>
To: Igor Mitsyanko <i.mitsyanko@gmail.com>
Cc: Blue Swirl <blauwirbel@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	aliguori@us.ibm.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] w32: Fix build with older gcc (unresolved symbol)
Date: Sat, 11 May 2013 21:51:51 +0200	[thread overview]
Message-ID: <518EA157.8060606@weilnetz.de> (raw)
In-Reply-To: <518E08D6.6090702@gmail.com>

Am 11.05.2013 11:01, schrieb Igor Mitsyanko:
> On 11.05.2013 10:41, Stefan Weil wrote:
>> Am 10.05.2013 22:14, schrieb Igor Mitsyanko:
>>> On 29.03.2013 21:20, Stefan Weil wrote:
>>>> The cross i586-mingw32msvc-gcc 4.4.4 from Debian Squeeze does not
>>>> support
>>>> __sync_val_compare_and_swap by default.
>>>>
>>>> Using -march=i686 fixes that and should also result in better code.
>>>>
>>>> Signed-off-by: Stefan Weil <sw@weilnetz.de>
>>>> ---
>>>>
>>>> Maybe this modification is also needed for native gcc-4.4 and older
>>>> on Linux i386. If yes, we can move the new script code out of the
>>>> MinGW conditional code.
>>>>
>>>> Newer versions of gcc obviously use -march=i686 by default and
>>>> don't need the patch, but it also won't do any harm for those
>>>> versions.
>>>>
>>>> Stefan
>>>>
>>> mingw is built with --build=mingw32 and looks like it defaults to
>>> -march=i386 (I have gcc version 4.7.2).
>>> Default build on windows is broken without this patch, it should be
>>> applied to 1.5 probably.
>>>
>>> Tested-by: Igor Mitsyanko <i.mitsyanko@gmail.com>
>>>
>> With latest QEMU, -march=i486 is used and there should be no problem.
>> If there still is a problem, we have to look for the reason.
>>
>> Could you please post the output from configure?
>>
>> Regards,
>> Stefan
>>
>
> Right, looks like my configuration has __sync_fetch_and_and but
> doesn't have __sync_val_compare_and_swap. That's why configure check
> passes but build fails:
>
>   LINK  arm-softmmu/qemu-system-armw.exe
> ../migration.o: In function `migrate_finish_set_state':
> g:\qemu_develop_ws\qemu_upstream/migration.c:293: undefined reference
> to `__sync_val_compare_and_swap_4'
> g:\qemu_develop_ws\qemu_upstream/migration.c:293: undefined reference
> to `__sync_val_compare_and_swap_4'
> g:\qemu_develop_ws\qemu_upstream/migration.c:293: undefined reference
> to `__sync_val_compare_and_swap_4'
> collect2.exe: error: ld returned 1 exit status
> make[1]: *** [qemu-system-armw.exe] Error 1
> make: *** [subdir-arm-softmmu] Error 2

Hi,

I can reproduce that problem with a native MinGW.
http://patchwork.ozlabs.org/patch/243150/ should fix it.

Thank you for your report.

Regards,
Stefan Weil

      reply	other threads:[~2013-05-11 19:52 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-29 17:20 [Qemu-devel] [PATCH] w32: Fix build with older gcc (unresolved symbol) Stefan Weil
2013-03-29 17:58 ` Peter Maydell
2013-03-30 13:44   ` Blue Swirl
2013-03-30 13:50     ` Peter Maydell
2013-03-30 18:54 ` Blue Swirl
2013-05-10 20:14 ` Igor Mitsyanko
2013-05-11  6:41   ` Stefan Weil
2013-05-11  9:01     ` Igor Mitsyanko
2013-05-11 19:51       ` Stefan Weil [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=518EA157.8060606@weilnetz.de \
    --to=sw@weilnetz.de \
    --cc=aliguori@us.ibm.com \
    --cc=blauwirbel@gmail.com \
    --cc=i.mitsyanko@gmail.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.