Re: compilation troubles
От | Tom Lane |
---|---|
Тема | Re: compilation troubles |
Дата | |
Msg-id | 9658.1008646757@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | compilation troubles ("Yuri A. Kabaenkov" <sec@artofit.com>) |
Список | pgsql-admin |
"Yuri A. Kabaenkov" <sec@artofit.com> 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
В списке pgsql-admin по дате отправления: