postgresql 7.3.3
Hi everyone.
I've downloaded the new version of postgresql, and when trying to compile it, I get some errors
(you can see them at the bottom). It seems to be a problem with pg_dump.
Has it happened to anyone else? does anybody have an idea of why is it happening?
----------------
# uname -a
FreeBSD lucifer.akyasociados.com.ar 4.8-RELEASE FreeBSD 4.8-RELEASE #4: Sat Apr 26 16:26:40 ART 2003
root@lucifer.akyasociados.com.ar:/usr/obj/usr/src/sys/LUCIFER i386
# gcc --version
2.95.4
# ./configure --prefix=/usr/local/pgsql --libdir=/usr/local/lib/postgresql/ --includedir=/usr/local/include/postgresql --with-java
...
# make
...
gmake[4]: Leaving directory `/root/tmp/postgresql-7.3.3/src/backend/parser'
gcc -pipe -Wall -Wmissing-prototypes -Wmissing-declarations -I../../../src/interfaces/libpq -I../../../src/include -DBINDIR=\"/usr/local/pgsql/bin\" -c -o pg_dump.o pg_dump.c
pg_dump.c: In function `main':
pg_dump.c:192: elements of array `long_options' have incomplete type
pg_dump.c:193: warning: excess elements in struct initializer
pg_dump.c:193: warning: (near initialization for `long_options[0]')
pg_dump.c:193: `no_argument' undeclared (first use in this function)
pg_dump.c:193: (Each undeclared identifier is reported only once
pg_dump.c:193: for each function it appears in.)
pg_dump.c:193: warning: excess elements in struct initializer
pg_dump.c:193: warning: (near initialization for `long_options[0]')
...
pg_dump.c:227: warning: excess elements in struct initializer
pg_dump.c:227: warning: (near initialization for `long_options[28]')
pg_dump.c:228: invalid use of undefined type `struct option'
pg_dump.c:192: storage size of `long_options' isn't known
pg_dump.c:273: warning: implicit declaration of function `getopt_long'
gmake[3]: *** [pg_dump.o] Error 1
gmake[3]: Leaving directory `/root/tmp/postgresql-7.3.3/src/bin/pg_dump'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/root/tmp/postgresql-7.3.3/src/bin'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/root/tmp/postgresql-7.3.3/src'
gmake: *** [all] Error 2
Franco Bruno Borghesi <franco@akyasociados.com.ar> writes:
I've downloaded the new version of postgresql, and when trying to compile it, I get some errors
pg_dump.c:192: elements of array `long_options' have incomplete type
...
pg_dump.c:273: warning: implicit declaration of function `getopt_long'
Hm. It would seem that configure found the getopt_long() function in
libc, but the <getopt.h> include file either doesn't exist or doesn't
declare the function and associated structures. Maybe you need to
install header files to go along with your libraries?
If you just want a quick and dirty solution, undefining HAVE_GETOPT_LONG
in src/include/pg_config.h would probably make it compile.
regards, tom lane
I've reinstalled libgnugetopt from the ports, I've checked gnugetopt.h and libgenugetopt.*,
and all of them were reinstalled... but still didn't work.
So as you said, I undefined HAVE_GETOPT_LONG, and everything compiled perfectly. It's ok,
because I never use long options :).
Thanks Tom!
Show quoted text
On Thursday 29 May 2003 16:55, you wrote:
Franco Bruno Borghesi <franco@akyasociados.com.ar> writes:
I've downloaded the new version of postgresql, and when trying to compile
it, I get some errorspg_dump.c:192: elements of array `long_options' have incomplete type
...
pg_dump.c:273: warning: implicit declaration of function `getopt_long'Hm. It would seem that configure found the getopt_long() function in
libc, but the <getopt.h> include file either doesn't exist or doesn't
declare the function and associated structures. Maybe you need to
install header files to go along with your libraries?If you just want a quick and dirty solution, undefining HAVE_GETOPT_LONG
in src/include/pg_config.h would probably make it compile.regards, tom lane