Thread: Windows, gettext/libintl, pg_sprintf and friends

Windows, gettext/libintl, pg_sprintf and friends

From
Andrew Dunstan
Date:
First the good news. After several false tries I managed to get gettext
and friends installed on MinGW so that I could get past configure when I
set "--enable-nls". I did this by installing (in this order) the
following packages from
http://sourceforge.net/project/showfiles.php?group_id=23617 in c:\MinGW :

libintl-0.11.5-2-bin.zip
libiconv-1.8-1-lib.zip
libiconv-1.8-1-bin.zip
gettext-0.14.1-bin.zip
gettext-0.14.1-lib.zip
gettext-0.14.1-dep.zip

That's significan't progress - I have had nls turned off up to now.

Now the bad news: I get huge numbers of warnings about redefinitions
etc, that look like this:

../../../../src/include/port.h:135:1: warning: "printf" redefined
In file included from ../../../../src/include/c.h:97,                from ../../../../src/include/postgres_fe.h:21,
          from interval.c:1:
 
c:/mingw/include/libintl.h:303:1: warning: this is the location of the previous definition


or this:

../../../../src/include/port.h:114: warning: `libintl_printf' is an unrecognized format function type

and an eventual failure when building ecpg that looks in part like this:

dllwrap  -o libpgtypes.dll --dllname libpgtypes.dll  --def pgtypes.def numeric.o datetime.o common.o dt_common.o
timestamp.ointerval.o pgstrcasecmp.o  -L../../../../src/port -lm 
 
numeric.o(.text+0x19e9): In function `PGTYPESnumeric_from_double':
C:/msys/1.0/home/pgrunner/pgbuildfarm/root/HEAD/pgsql.5860/src/interfaces/ecpg/pgtypeslib/numeric.c:1423: undefined
referenceto `pg_sprintf'
 
datetime.o(.text+0x436): In function `PGTYPESdate_fmt_asc':


For the whole gory mess see the log at
http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=loris&dt=2005-03-17%2018:40:20


cheers

andrew





Re: Windows, gettext/libintl, pg_sprintf and friends

From
Bruce Momjian
Date:
Andrew Dunstan wrote:
> 
> First the good news. After several false tries I managed to get gettext
> and friends installed on MinGW so that I could get past configure when I
> set "--enable-nls". I did this by installing (in this order) the
> following packages from
> http://sourceforge.net/project/showfiles.php?group_id=23617 in c:\MinGW :
> 
> libintl-0.11.5-2-bin.zip
> libiconv-1.8-1-lib.zip
> libiconv-1.8-1-bin.zip
> gettext-0.14.1-bin.zip
> gettext-0.14.1-lib.zip
> gettext-0.14.1-dep.zip
> 
> That's significan't progress - I have had nls turned off up to now.
> 
> Now the bad news: I get huge numbers of warnings about redefinitions
> etc, that look like this:
> 
> ../../../../src/include/port.h:135:1: warning: "printf" redefined
> In file included from ../../../../src/include/c.h:97,
>                  from ../../../../src/include/postgres_fe.h:21,
>                  from interval.c:1:
> c:/mingw/include/libintl.h:303:1: warning: this is the location of the previous definition

Ah, Nicolai Tufar complained about the same problem earlier this week. 
My only guess is that the #define for snprintf is also affecting the
include files, but I am unsure.

My MinGW laptop is out for service but I should have it back tomorrow.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
359-1001+  If your life is a hard drive,     |  13 Roberts Road +  Christ can be your backup.        |  Newtown Square,
Pennsylvania19073