| www.delorie.com/gnu/docs/gmp/gmp_9.html | search |
![]() Buy GNU books! | |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
You might find more up-to-date information at http://swox.com/gmp/.
./configure CC=gcc-with-my-options |
bash 2.03 is unable to run the `configure'
script, it exits silently, having died writing a preamble to
`config.log'. Use bash 2.04 or higher.
`make all' was found to run out of memory during the final `libgmp.la' link on one system tested, despite having 64Mb available. A separate `make libgmp.la' helped, perhaps recursing into the various subdirectories uses up memory.
The problem is that `libgmpxx' is relinked at the install stage to ensure that if the system puts a hard-coded path to `libgmp' within `libgmpxx' then that path will be correct. Naturally the linker is directed to look only at the final location, not the staging area, so if `libgmp' is not already in that final location then the link will fail.
A workaround for this on SVR4 style systems, such as GNU/Linux, where paths
are not hard-coded, is to include the staging area in the linker's search
using LD_LIBRARY_PATH. For example with `--prefix=/usr' but
installing under `/my/staging/area',
LD_LIBRARY_PATH=/my/staging/area/usr/lib \ make install DESTDIR=/my/staging/area |
strip prior to 2.12
strip from GNU binutils 2.11 and earlier should not be used on the
static libraries `libgmp.a' and `libmp.a' since it will discard all
but the last of multiple archive members with the same name, like the three
versions of `init.o' in `libgmp.a'. Binutils 2.12 or higher can be
used successfully.
The shared libraries `libgmp.so' and `libmp.so' are not affected by
this and any version of strip can be used on them.
make syntax error
On certain versions of SCO OpenServer 5 and IRIX 6.5 the native make
is unable to handle the long dependencies list for `libgmp.la'. The
symptom is a "syntax error" on the following line of the top-level
`Makefile'.
libgmp.la: $(libgmp_la_OBJECTS) $(libgmp_la_DEPENDENCIES) |
Either use GNU Make, or as a workaround remove
$(libgmp_la_DEPENDENCIES) from that line (which will make the initial
build work, but if any recompiling is done `libgmp.la' might not be
rebuilt).
cc (which is a modified GCC), not a plain GCC. A
static-only build should work though (`--disable-shared').
Also, libtool currently cannot build C++ shared libraries on MacOS X, so if `--enable-cxx' is desired then `--disable-shared' must be used. Hopefully this will be fixed in the future.
The system compiler on old versions of NeXT was a massacred and old GCC, even if it called itself `cc'. This compiler cannot be used to build GMP, you need to get a real GCC, and install that. (NeXT may have fixed this in release 3.3 of their system.)
Bugs in GCC 2.7.2 (and 2.6.3) mean it can't be used to compile GMP on POWER or PowerPC. If you want to use GCC for these machines, get GCC 2.7.2.1 (or later).
Use the GNU assembler instead of the system assembler, since the latter has serious bugs.
The system sed prints an error "Output line too long" when libtool
builds `libgmp.la'. This doesn't seem to cause any obvious ill effects,
but GNU sed is recommended, to avoid any doubt.
A shared library build of GMP seems to fail in this combination, it builds but
then fails the tests, apparently due to some incorrect data relocations within
gmp_randinit_lc_2exp_size. The exact cause is unknown,
`--disable-shared' is recommended.
When creating a DLL version of `libgmp', libtool creates wrapper scripts
like `t-mul' for programs that would normally be `t-mul.exe', in
order to setup the right library paths etc. This works fine, but the absence
of `t-mul.exe' etc causes make to think they need recompiling
every time, which is an annoyance when re-running a `make check'.
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
| webmaster donations bookstore | delorie software privacy |
| Copyright © 2003 by The Free Software Foundation | Updated Jun 2003 |