Thread: Cannot build plperl from source (8.1.3)

Cannot build plperl from source (8.1.3)

From
"Ivan M."
Date:
I'm trying to build from source on my own "distribution" of Linux (which
has been running fine for more than two years).  It's basically the same
as all other Linux distributions.

I have manually built Perl (5.8.8) with dynamic library, successfully.

When I use --with-perl in the .config the Perl library and headers are
located successfully, and the build works to the point of actually
building (and symlinking) plperl.  However, the make then gets lost with
the following messages for "plperl" as non-existent.  The build is
successful with the perl option.  Any ideas?

make[2]: Leaving directory `/stem/opus/postgres/postgresql-8.1.3/src/bin'
make -C pl all
make[2]: Entering directory `/stem/opus/postgres/postgresql-8.1.3/src/pl'
make[3]: Entering directory
`/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql'
make -C src all
make[4]: Entering directory
`/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql/src'
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -I. -I../../../../src/include -D_GNU_SOURCE
-c -o pl_gram.o pl_gram.c
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -I. -I../../../../src/include -D_GNU_SOURCE
-c -o pl_handler.o pl_handler.c
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -I. -I../../../../src/include -D_GNU_SOURCE
-c -o pl_comp.o pl_comp.c
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -I. -I../../../../src/include -D_GNU_SOURCE
-c -o pl_exec.o pl_exec.c
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -I. -I../../../../src/include -D_GNU_SOURCE
-c -o pl_funcs.o pl_funcs.c
ar crs libplpgsql.a pl_gram.o pl_handler.o pl_comp.o pl_exec.o pl_funcs.o
ranlib libplpgsql.a
i586-pc-linux-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Winline -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fpic -shared -Wl,-soname,libplpgsql.so.1
pl_gram.o pl_handler.o pl_comp.o pl_exec.o pl_funcs.o
-L../../../../src/port  -o libplpgsql.so.1.0
rm -f libplpgsql.so.1
ln -s libplpgsql.so.1.0 libplpgsql.so.1
rm -f libplpgsql.so
ln -s libplpgsql.so.1.0 libplpgsql.so
make[4]: Leaving directory
`/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql/src'
make[3]: Leaving directory
`/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql'
make: *** plperl: No such file or directory.  Stop.
make: Entering an unknown directorymake: Leaving an unknown
directorymake[2]: *** [all] Error 1
make[2]: Leaving directory `/stem/opus/postgres/postgresql-8.1.3/src/pl'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/stem/opus/postgres/postgresql-8.1.3/src'
make: *** [all] Error 2


Re: Cannot build plperl from source (8.1.3)

From
Tom Lane
Date:
"Ivan M." <ivan@flyingi.net> writes:
> make[4]: Leaving directory
> `/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql/src'
> make[3]: Leaving directory
> `/stem/opus/postgres/postgresql-8.1.3/src/pl/plpgsql'
> make: *** plperl: No such file or directory.  Stop.
> make: Entering an unknown directorymake: Leaving an unknown
> directorymake[2]: *** [all] Error 1
> make[2]: Leaving directory `/stem/opus/postgres/postgresql-8.1.3/src/pl'
> make[1]: *** [all] Error 2

So is src/pl/plperl/ actually there?  It looks to me like you've got an
incomplete source tree.  Maybe you didn't download the full
distribution?

            regards, tom lane