Thread: ubuntu 9.10 AMD64 undefined reference to `optreset'

ubuntu 9.10 AMD64 undefined reference to `optreset'

From
Graham Swallow
Date:
9.0 beta1 tarball
configure --prefix=/tmp/PG9/

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing
-fwrapv -L../../src/port -Wl,--as-needed -Wl,-rpath,'/tmp/pg9/lib'
-Wl,-E
... long list of .o files ...
 ../../src/port/libpgport_srv.a -lcrypt -ldl -lm -o postgres

postmaster/postmaster.o: In function `PostmasterMain':
postmaster.c:(.text+0x42ac): undefined reference to `optreset'
tcop/postgres.o: In function `process_postgres_switches':
postgres.c:(.text+0x12fb): undefined reference to `optreset'
collect2: ld returned 1 exit status
make[2]: *** [postgres] Error 1
make[2]: Leaving directory `/tmp/p/src/backend'

config.log says:

ac_cv_func_getopt=yes
ac_cv_func_getopt_long=yes

Is there perhaps an empty .deb package that has the dependencies?

Graham

Re: ubuntu 9.10 AMD64 undefined reference to `optreset'

From
Tom Lane
Date:
Graham Swallow <lists@information-cascade.co.uk> writes:
> 9.0 beta1 tarball
> configure --prefix=/tmp/PG9/
> ...
> postmaster/postmaster.o: In function `PostmasterMain':
> postmaster.c:(.text+0x42ac): undefined reference to `optreset'
> tcop/postgres.o: In function `process_postgres_switches':
> postgres.c:(.text+0x12fb): undefined reference to `optreset'

That's very peculiar, because those files only attempt to touch optreset
if configure found that that variable is defined by the system
libraries.  Would you look at the part of config.log that begins with
"checking for optreset"?

            regards, tom lane

ubuntu 9.10 AMD64 undefined reference to `optreset'

From
Graham Swallow
Date:
---------- Forwarded message ----------
Date: 5 May 2010 15:15
Subject: Re: [BUGS] ubuntu 9.10 AMD64 undefined reference to `optreset'


configure:21408: checking for optreset
configure:21434: gcc -o conftest -O2 -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv =A0-D_GNU_SOURCE =A0 =A0conftest.c -lz -ledit
-lcrypt -ldl -lm =A0>&5
configure:21441: $? =3D 0
configure:21461: result: yes

Manually repeating without -ledit seemed to make the same difference

Graham


> libraries. =A0Would you look at the part of config.log that begins with
> "checking for optreset"?
>
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0regards, tom lane
>