Tom Lane-2 wrote: > > Josh Trutwin <josh@xxxxxxxxxxxxxxxxxxx> 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. -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general