qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 1/2] Fix for Haiku


From: Richard Zak
Subject: Re: [PATCH 1/2] Fix for Haiku
Date: Sat, 3 Jul 2021 18:06:49 -0400

For MIPS (all sub-targets, 64-bit and EL) & xtensa(eb), the compiler complains about running out of memory. Best I can see, that's not what actually happens, but that's the error message. I was going to investigate this later, but this was the error which was causing the test with the Haiku VM with that corresponding make target. My desktop & laptop have 64 GB, and I'm pretty sure it didn't get to that point.

/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: error: libqemu-mips-softmmu.fa.p/target_mips_tcg_sysemu_mips-semi.c.o(.rodata) is too large (0xffff405a bytes)
/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: final link failed: memory exhausted
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Makefile:158: recipe for target 'run-ninja' failed
make: *** [run-ninja] Error 1

/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: final link failed: memory exhausted
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Makefile:158: recipe for target 'run-ninja' failed
make: *** [run-ninja] Error 1

TPM is disabled as it's not supported in Haiku. Using that "finddir" command for capstone was done that way in Haiku's build recipe, so I copied it into the configure script. A quick test shows that pkg-config does find it properly, so I'll remove the "finddir" command and test again.

TPM and "finddir" command in Haiku's recipe for qemu: https://github.com/haikuports/haikuports/blob/master/app-emulation/qemu/qemu-6.0.0.recipe

În sâm., 3 iul. 2021 la 17:40, Peter Maydell <peter.maydell@linaro.org> a scris:
On Sat, 3 Jul 2021 at 22:10, Richard Zak <richard.j.zak@gmail.com> wrote:
>
> For Haiku: turn off TPM, disable mips & xtensa emulators as they won't compile on Haiku, use Haiku's capstone. I'm resending this as I previously sent to the wrong address. This should resolve the memory issue with "make vm-build-haiku.x86_64"


So why don't the mips and xtensa emulators compile on Haiku?
What goes wrong ?

> Signed-off-by: Richard Zak <richard.j.zak@gmail.com>
> ---
>  configure | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index e799d908a3..a965c6c72e 100755
> --- a/configure
> +++ b/configure
> @@ -358,6 +358,7 @@ oss_lib=""
>  bsd="no"
>  linux="no"
>  solaris="no"
> +haiku="no"
>  profiler="no"
>  cocoa="auto"
>  softmmu="yes"
> @@ -769,7 +770,10 @@ SunOS)
>  ;;
>  Haiku)
>    haiku="yes"
> -  QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -D_BSD_SOURCE $QEMU_CFLAGS"
> +  tpm="no"

Why do we need to disable tpm?

> +  capstone="system"
> +  target_list_exclude="mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu xtensa-softmmu xtensaeb-softmmu"
> +  QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -D_BSD_SOURCE -I`finddir B_SYSTEM_HEADERS_DIRECTORY`/capstone $QEMU_CFLAGS"

It seems a bit odd that we have to manually put the capstone headers
on the include path. meson.build runs pkg-config to ask where the system
capstone headers are: does Haiku return the wrong value there?

thanks
-- PMM


--
Regards,

Richard J. Zak
Professional Genius

reply via email to

[Prev in Thread] Current Thread [Next in Thread]