Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#12056 closed bug (invalid)

Troubles building Qemu under Haiku

Reported by: haiqu Owned by: bonefish
Priority: normal Milestone: Unscheduled
Component: - General Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Preamble: Downloaded the master files from https://github.com/mmlr/qemu-haiku and installed glib2-x86 & glib2-x86-devel from HaikuDepot. Confirmed that they are installed in system/lib/x86 and used 'setarch x86' before attempting anything.

Problem: Message when trying to do a ./configure is:

ERROR: glib-2.12 gthread-2.0 is required to compile QEMU

Is this looking for a specific version of glib, or is something else wrong here?

mmlr? Anyone?

Change History (9)

comment:1 Changed 4 years ago by bonefish

Component: Build System- General
Resolution: invalid
Status: newclosed

Problems with building third-party software aren't tracked here. Please use the HaikuPorts bug tracker or ask on the HaikuPorts development mailing list.

comment:2 Changed 4 years ago by haiqu

Note: File names present are libglib.2.0.so.0.3800.1 and libgthread.2.0.so.3800.1 which seems to be too old for this package. If so, where do I get a later version? I tried building libglib but ran into other issues.

Bonefish: Since this is the build system for the MIPS and ARM ports of Haiku this seems to be an odd response.

Last edited 4 years ago by haiqu (previous) (diff)

comment:3 in reply to:  2 Changed 4 years ago by bonefish

Replying to haiqu:

Bonefish: Since this is the build system for the MIPS and ARM ports of Haiku this seems to be an odd response.

I don't see what qemu has to do with the build system. You don't need it to build Haiku. You may want to use some kind of virtualizer/emulator to run/test the incomplete ports of Haiku (not sure to what degree actual hardware is supported), but that certainly doesn't have to be qemu on Haiku.

Anyway, all that aside, even if qemu was required software on Haiku, there's a recipe for it at HaikuPorts. Since there's a qemu package available in all x86* repositories, I assume the recipe works. If it doesn't, please report that problem at HaikuPorts. If it does, then that's your reference for building qemu and if you don't manage to get building qemu manually to work, please ask on the HaikuPorts development mailing list.

comment:4 Changed 4 years ago by pulkomandy

This version of QEMU is available in the repositories. It however does not supports emulating a beagle-xm, which is our current reference ARM platform. So it is rather useless.

You would need Linaro-QEMU, for which there is also a recipe, but no package, as it crashes on Haiku after a few seconds. All experiments with Haiku on ARM so far have been built from Linux and run from QEMU inside Linux (or possibly Mac OS X).

And finally, there is currently no MIPS port.

comment:5 Changed 4 years ago by haiqu

Thanks guys, this information helps tremendously. I'm actually trying to set up several new hardware platforms in both Arm and Mips, and I'm not a fan of Linux at all so I'll persist with it. If I manage to make any improvements I'll forward them to Michael Lotz who I believe is maintaining the port.

comment:6 Changed 4 years ago by haiqu

Update: Fixed the problem reported above by installing glib2 and glib2-devel from HaikuDepot. Despite the fact that I was building with X86 architecture enabled the package needed to see the x86_gcc2 files before continuing.

Now stuck with an error "pixman >= 0.21.8 not present" and since the gcc2 version is NOT in HaikuDepot I'll need to build it.

Anyhow, nice to find the solution.

comment:7 Changed 4 years ago by korli

I don't quite understand why you would need a gcc2 version of pixman, given that qemu is gcc4 only

comment:8 Changed 4 years ago by haiqu

korli: Neither do I. I'm pretty sure it's a pathing bug in the GCC4 setup someplace.

Anyhow, it's all good here now. Patched and built qemu-2.2.0 for Mips and ran BSD 2.11 from the terminal on it about 10 minutes ago. :-)

comment:9 Changed 4 years ago by korli

Two things to priorize the x86 setup on a x86_gcc2 hybrid system:

  • export PATH="/system/bin/x86:$PATH"
  • export PKG_CONFIG_PATH='/system/develop/lib/x86/pkgconfig'
Note: See TracTickets for help on using tickets.