qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] qemu-doc.texi: Add information on compiling sou


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] qemu-doc.texi: Add information on compiling source code on Mac OS X
Date: Fri, 7 Aug 2015 18:00:47 +0100

On 6 August 2015 at 16:35, Programmingkid <address@hidden> wrote:
> Add information on compiling source code on Mac OS X
> to the documentation.
>
> Signed-off-by: John Arbuckle <address@hidden>
>
> ---
> This patch may depend on the other patch I sent in for the qemu-doc.texi
> file.
>
>  qemu-doc.texi |   41 ++++++++++++++++++++++++++++++++++++++---
>  1 files changed, 38 insertions(+), 3 deletions(-)
>
> diff --git a/qemu-doc.texi b/qemu-doc.texi
> index 9a8f353..eb4ce8d 100644
> --- a/qemu-doc.texi
> +++ b/qemu-doc.texi
> @@ -3024,9 +3024,44 @@ and all other address@hidden compiled
> for Win32.
>  @node Mac OS X
>  @section Mac OS X
>
>
>
> -The Mac OS X patches are not fully merged in QEMU, so you should look
> -at the QEMU mailing list archive to have all the necessary
> -information.

Heh, that's laughably ancient. Thanks for writing a fix for this.

At the top of this section is probably a good place to say

# QEMU should run on Mac OS X versions 10.5 and later.

> +After downloading the QEMU source code, double-click it to expand it.
> +
> +Then configure QEMU to build the emulator you want using the --target-list
> option:
> address@hidden
> +./configure --target-list=ppc-softmmu,i386-softmmu --disable-sdl
> --disable-gtk
> address@hidden example

I think it would be better to just make configure disable
SDL and GTK automatically when building the OSX binary.
I'll write a patch for this...

Suggestions like --target-list= belong in a host-OS-agnostic
section of the documentation; they're not OSX specific.

> +
> address@hidden
> +*Disabling SDL and GTK support is suggested because QEMU runs poorly with
> them.
> address@hidden smalldisplay
> +
> +Start building QEMU using the make command:
> address@hidden
> +make
> address@hidden example
> +
> +Note: Apple supplied versions of gcc may not work with QEMU. If after the
> configure

I think the first and most important thing we should say is:

# If you have a recent version of Mac OS X (OSX 10.7 or better
# with Xcode 4.2 or better) we recommend building QEMU with the
# default compiler provided by Apple for your version of OSX as
# part of Xcode (which will be 'clang'). The configure script will
# automatically pick this.

That will cover almost everybody who wants to build QEMU
(on the assumption that most people are running a new OSX).

Then after that you can have the information about older
OSX which don't have a working compiler:

# Apple supplied versions of GCC do not work with QEMU.
# If after the configure step ....

(https://trac.macports.org/wiki/UsingTheRightCompiler
suggests that XCode 3.2 for OSX 10.6 provided a non-default
'clang'; I don't have a 10.6 + 3.2 system to check whether that
clang will build QEMU though. If it does then we should
recommend using it rather than building gcc. 10.5 users
are definitely stuck with finding or building a non-Apple
compiler, though.)

> +step you see a message like this:
> address@hidden
> +ERROR: Your compiler does not support the __thread specifier for
> +       Thread-Local Storage (TLS). Please upgrade to a version that does.
> address@hidden example
> +You may have to build your own version of gcc from source. Expect that to
> take
> +several hours. GCC 4.3 or above would work. More information can be found
> here:
> +https://gcc.gnu.org/install/ @*
> +
> +These are some of the third party binaries of gcc available for download:
> address@hidden
> address@hidden Homebrew http://brew.sh/
> address@hidden https://www.litebeam.net/gcc/gcc_472.pkg
> address@hidden http://www.macports.org/ports.php?by=name&substr=gcc
> address@hidden itemize
> +
> +You can have several versions of GCC on your system. To specify a certain
> version,
> +use the --cc and --cxx options.
> address@hidden
> +./configure --cxx=<path of your c++ compiler> --cc=<path of your c
> compiler> <other options>
> address@hidden example
>

thanks
-- PMM



reply via email to

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