Add a note about a problem that can arise when bootstrapping a 64-bit

Branches: main, 10.04

README.MacOS:
	Add a note about a problem that can arise when bootstrapping a 64-bit
	Mercury compiler using a 32-bit one and vice versa.
This commit is contained in:
Julien Fischer
2010-06-09 04:38:28 +00:00
parent 455f87ba38
commit ef02c69336

View File

@@ -25,6 +25,21 @@ By default, 32-bit versions of the executables and libraries are installed on
Mac OS X 10.5. To build and install 64-bit Mercury on that system you must Mac OS X 10.5. To build and install 64-bit Mercury on that system you must
pass the "-m64" option to gcc. pass the "-m64" option to gcc.
Note that if you are building Mercury from scratch using an existing installed
Mercury compiler, i.e. you are not installing using the pre-generated C files in
the source distribution, and you are using a 32-bit Mercury compiler to
bootstrap a 64-bit installation (or vice versa) then you must compile with
--cross-compiling enabled. Not enabling it will result in library installation
aborting with an error message like the following:
Uncaught Mercury exception:
Software Error: pred_table.m: Unexpected: can't locate compare/3
You can enable cross-compilation by putting the following line in a file named
Mmake.params at the top-level of the source tree:
MCFLAGS = --cross-compiling
Mercury can currently only be compiled by gcc on Mac OS X. It cannot currently Mercury can currently only be compiled by gcc on Mac OS X. It cannot currently
be compiled with llvm-gcc or clang. be compiled with llvm-gcc or clang.