"Yuri A. Kabaenkov" <[EMAIL PROTECTED]> writes:
> gcc -pipe -O2 -Wall -Wmissing-prototypes -Wmissing-declarations pg_encoding.o 
>-L../../../src/interfaces/libpq -lpq  -R/usr/local/pgsql/lib -lz -lcrypt -lcompat -lm 
>-lutil -lreadline  -o pg_encoding
> pg_encoding.o: In function `main':
> pg_encoding.o(.text+0x3d): undefined reference to `pg_char_to_encoding'
> pg_encoding.o(.text+0x7c): undefined reference to `pg_encoding_to_char'
> gmake[3]: *** [pg_encoding] Error 1

We have seen problems like this when multibyte-enabled programs (such as
pg_encoding) got linked against a non-multibyte-enabled libpq.  The
routines pg_char_to_encoding and pg_encoding_to_char are in libpq ...
but only if it's been compiled multibyte.

I speculate that there is a non-multibyte libpq in /usr/local/pgsql/lib,
and for some reason your linker is seizing on that copy to use, rather
than the one in ../../../src/interfaces/libpq (which presumably is
multibyte enabled).  Since you didn't mention your platform I have no
idea what might be done to fix this, short of clearing out
/usr/local/pgsql/lib while you build.

In the long run it might be a good idea if non-multibyte libpq still
contained (stub versions of) these routines ...

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly

Reply via email to