Обсуждение: Out-of-tree compilation seems broken in HEAD (plpgsql)
$ mkdir build $ cd build $ ../PostgreSQL.dev/configure $ make [...] gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv -fpic -I/home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src -I../../../../src/include -I/home/marko/src/build/../PostgreSQL.dev/src/include -D_GNU_SOURCE -c -o pl_comp.o /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c:20:21: error: pl_gram.h: No such file or directory -- marko
Marko Kreen wrote: > $ mkdir build > $ cd build > $ ../PostgreSQL.dev/configure > $ make > [...] > gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith > -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing > -fwrapv -fpic -I/home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src > -I../../../../src/include > -I/home/marko/src/build/../PostgreSQL.dev/src/include -D_GNU_SOURCE > -c -o pl_comp.o > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c:20:21: > error: pl_gram.h: No such file or directory I got the same error yesterday, but I was building in-tree. "make maintainer-clean" worked for me. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
Marko Kreen escribió: > $ mkdir build > $ cd build > $ ../PostgreSQL.dev/configure > $ make > [...] > gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith > -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing > -fwrapv -fpic -I/home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src > -I../../../../src/include > -I/home/marko/src/build/../PostgreSQL.dev/src/include -D_GNU_SOURCE > -c -o pl_comp.o > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c:20:21: > error: pl_gram.h: No such file or directory Try running "make maintainer-clean" -- see http://archives.postgresql.org/message-id/20080829162252.GG3983%40alvh.no-ip.org -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.
On 9/2/08, Alvaro Herrera <alvherre@commandprompt.com> wrote: > Marko Kreen escribió: > > $ mkdir build > > $ cd build > > $ ../PostgreSQL.dev/configure > > $ make > > [...] > > gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith > > -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing > > -fwrapv -fpic -I/home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src > > -I../../../../src/include > > -I/home/marko/src/build/../PostgreSQL.dev/src/include -D_GNU_SOURCE > > -c -o pl_comp.o > > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c > > /home/marko/src/build/../PostgreSQL.dev/src/pl/plpgsql/src/pl_comp.c:20:21: > > error: pl_gram.h: No such file or directory > > > Try running "make maintainer-clean" -- see > > http://archives.postgresql.org/message-id/20080829162252.GG3983%40alvh.no-ip.org Note I started with empty tree.. I'll try with new cvs checkout. -- marko
Marko Kreen escribió: > On 9/2/08, Alvaro Herrera <alvherre@commandprompt.com> wrote: > > Marko Kreen escribió: > > > error: pl_gram.h: No such file or directory > > > > Try running "make maintainer-clean" -- see > > > > http://archives.postgresql.org/message-id/20080829162252.GG3983%40alvh.no-ip.org > > Note I started with empty tree.. The build tree may be empty, but the source tree contains the derived files. I urge you to read the whole thread I linked. > I'll try with new cvs checkout. That'll have the same effect as make maintainer-clean, and should work equally well. -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Alvaro Herrera <alvherre@commandprompt.com> writes: > Marko Kreen escribi�: >> I'll try with new cvs checkout. > That'll have the same effect as make maintainer-clean, and should work > equally well. No, it'll work better. The real problem here is that in the CVS-HEAD makefiles, "make maintainer-clean" fails to remove the *old* derived files. Perhaps we should have left the old filenames listed in the clean targets... regards, tom lane