Tom Lane píše v so 28. 03. 2009 v 14:36 -0400:
> Apparently the system version of getopt_long is broken on Solaris 11.
> My patience for this grows short.
It is not problem with getopt_long itself, but with symbol overriding.
getopt_long uses optind and so on from libc, but e.g. initdb takes
optind which is defined in port/getopt.c. It causes problem in following
02607 /* Non-option argument specifies data directory */
02608 if (optind < argc)
which compares different variable.
I think it is general problem. HAVE_GETOPT_LONG cannot be defined when
HAVE_GETOPT_H is not defined.
I'm sorry for my previous patch. I had to make some mistake in
I attached a fix. Only problem what I see there is getopt_long.h which
but getopt.h is required for getopt_long(). Fortunately, content is
similar with getopt_long.h and there is no problem with it on Solaris.
In response to
pgsql-hackers by date
|Next:||From: Zdenek Kotala||Date: 2009-03-30 20:26:22|
|Subject: Re: More message encoding woes|
|Previous:||From: Dimitri Fontaine||Date: 2009-03-30 19:59:41|
|Subject: Re: psql \d* and system objects|