Thread: ubuntu 9.10 AMD64 undefined reference to `optreset'
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
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
---------- 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 >