Tom Lane-2 wrote:
>
> Josh Trutwin <josh@trutwins.homeip.net> writes:
>> Hi - I'm trying to build 8.3.6 on a box recently upgraded from Sarge
>> to Lenny and I get the following error during compile:
>
>> make[4]: Entering directory
>> `/backup/source/db/postgresql-8.3.6/src/backend/utils/adt' gcc -O2
>> -Wall -Wmissing-prototypes -Wpointer-arith -Winline
>> -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing
>> -fwrapv -I../../../../src/include -D_GNU_SOURCE -I/usr/local/lib -c
>> -o geo_ops.o geo_ops.c /usr/lib/gcc/i486-linux-gnu/4.3.2/cc1: symbol
>> lookup error: /usr/lib/libmpfr.so.1: undefined symbol:
>> __gmp_get_memory_functions
>
> [ blink... ] There's no reason for a compile to be looking into shared
> libraries. What I think must have happened here is that this reflects a
> bogus function call internally in gcc itself. Which probably means that
> you have a gcc version that's out-of-sync with your libmpfr.so.1 version
> (whatever the heck that is). I'd suggest asking around among some
> Debian experts, or just reinstalling instead of upgrading.
>
> regards, tom lane
>
I had exactly same error (missing symbol __gmp_get_memory_functions)
while compiling libsndfile-1.0.20
This old message helped a lot. libmpfr was compiled with gcc-4.3.3
and I had updated to gcc-4.4.1
I recompiled mpfr and the error was solved.
(I am still using PostgreSQL-8.3.4 on Scientific
Linux 5.x which I compiled with gcc-4.1.2)
Thank you for this nice mailing list :-)
MPFR is a portable library written in C for arbitrary precision
arithmetic on floating-point numbers. It is based on the GNU MP library.
It aims to extend the class of floating-point numbers provided by the
GNU MP library by a precise semantics. The main differences with the
`mpf' class from GNU MP are:
* the `mpfr' code is portable, i.e. the result of any operation does
not depend (or should not) on the machine word size
`mp_bits_per_limb' (32 or 64 on most machines);
* the precision in bits can be set exactly to any valid value for
each variable (including very small precision);
* `mpfr' provides the four rounding modes from the IEEE 754-1985
standard.
In particular, with a precision of 53 bits, `mpfr' should be able to
exactly reproduce all computations with double-precision machine
floating-point numbers (`double' type in C), except the default
exponent range is much wider and subnormal numbers are not implemented
but can be emulated.
--
View this message in context: http://www.nabble.com/8.3.6-build-error-on-Debian-Lenny-tp22427839p25757187.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.