[m-rev.] for review: update README.MacOS
Mark Brown
mark at cs.mu.OZ.AU
Mon Aug 29 16:12:16 AEST 2005
On 29-Aug-2005, Julien Fischer <juliensf at cs.mu.OZ.AU> wrote:
>
> For review by Mark or Ian.
>
> Also, some questions:
>
> (1) Has the linking problem with the .decldebug grades been resolved?
No. I tried it a few weeks back and it worked, but I've tried it more
recently and it didn't. So at best we can only say that it fails
intermittently.
>
> (2) [For Mark] Does the deep profiler work with Safari 2?
Yep, no problems.
>
> Estimated hours taken: 1
> Branches: main, release
>
> README.MacOS:
> Update this file as we now have a lot more experience using Mercury
> on this platform.
>
> Mention which versions of gcc are known to be comptibile with
> Mercury (and also some that are known not to be).
>
> Mention the problem with Apple's linker and linking large executables,
> like the compiler, in debug grades.
s/compiler,/compiler/
>
> Explain why statically linking against system libraries won't work.
>
> Add section on the Mac OS X specific steps necessary for setting
> up the deep profiler. Also, mention that Safari 1.5 is not
> particularly stable with the deep profiler.
>
> Julien.
>
> Index: README.MacOS
> ===================================================================
> RCS file: /home/mercury1/repository/mercury/README.MacOS,v
> retrieving revision 1.7
> diff -u -r1.7 README.MacOS
> --- README.MacOS 19 Oct 2004 06:01:35 -0000 1.7
> +++ README.MacOS 28 Aug 2005 17:07:26 -0000
> +---------------------------
> +C compilers and other tools
> +---------------------------
> +
> +Assuming that you have installed the Developer Tools, a typical Mac OS X
> +installation will provide several different versions of gcc. These will be
> +from the Apple branch of gcc development rather than mainline branch (although
> +the difference are relatively minor as far as Mercury is concerned).
s/difference/differences/
> +You can use the gcc_select command to select which version of the gcc
> +is the default gcc. Alternatively it is probably easier to point Mercury to
> +the actual correct version via the `--with-cc' option to configure. e.g.
> +
> + ./configure --with-cc=/usr/bin/gcc-3.3
> +
> +(/usr/bin/gcc is just symbolic link to the actual version; gcc_select just
s/is just symbolic/is a symbolic/
> +changes what the link currently points to.)
I think that gcc_select also checks that the executables and include files
exist, but it probably isn't that important to mention it here.
> +The version of tar in /usr/bin/tar on some older versions of Mac OS X (e.g. 10.1)
This line looks to be too long.
> +The 'asm_fast' grades will not work on powerpc-darwin machines, primarily
> +because of a (long-standing) bug in gcc's powerpc backend (GCC bug #10901).
> +By default the configure script will choose 'reg' as the default base grade.
> +You will probably get better performance by using the hlc.gc grade.
It may be worth mentioning that the reason reg is the default base grade is
because it supports debugging. E.g., change that last sentence to:
If you don't intend to use debugging (e.g. with production code),
you will probably get better performance by using the hlc.gc grade.
> +This restriction only applies to system libraries, statically linking against
Change the comma to a semicolon or full-stop.
> +Mercury libraries is fine.
> +
> +--------------------------
> +Deep profiling on Mac OS X
> +--------------------------
> +
> +The following discussion assumes a standard installation of Mac OS X. By default
Line length.
Other than that, this looks fine.
Cheers,
Mark.
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list