On 15 October 2015 at 16:29, Dario Beraldi <dario.beraldi@xxxxxxxxx> wrote:
On 15 October 2015 at 16:23, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:Dario Beraldi <dario.beraldi@xxxxxxxxx> writes:
>> It might be worth cd'ing into the src/pl/plpython subdirectory and
>> manually doing "make install" there to see what it prints.
> Here we go:
> cd
> /data/sblab-home/berald01/applications/postgresql/postgresql-9.3.5/src/pl/plpython
> make install
> make: Nothing to be done for `install'.
That, and the fact that your "ls" shows no derived files, means that the
Makefile is choosing not to do anything, which a look at the Makefile
says must be because shared_libpython isn't getting set. (As of 9.5
we've changed that to not fail silently, but in 9.3 this is what it does.)
There are two possibilities here: either your python3 installation does
not include a shared-library version of libpython, or it does but the
configure+Make process is failing to detect that. Probably should
establish which of those it is before going further.
regards, tom lane
Ahh, I guess this answers the question then:
cd /data/sblab-home/berald01/applications/postgresql/postgresql-9.3.5/src/pl/plpython/
make
*** Cannot build PL/Python because libpython is not a shared library.
*** You might have to rebuild your Python installation. Refer to
*** the documentation for details.
Ok, this seems to have done the trick:
# Get python and install as shared library:wget http://python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz
tar xf Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --enable-shared \
--prefix=$HOME \
LDFLAGS="-Wl,--rpath=$HOME/lib"
make
make altinstall
# Re-configure postgres
cd /Users/berald01/applications/postgresql/postgresql-9.3.5/
./configure --prefix=$HOME --with-python PYTHON=~/bin/python3.5
make
make install
tar xf Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --enable-shared \
--prefix=$HOME \
LDFLAGS="-Wl,--rpath=$HOME/lib"
make
make altinstall
# Re-configure postgres
cd /Users/berald01/applications/postgresql/postgresql-9.3.5/
./configure --prefix=$HOME --with-python PYTHON=~/bin/python3.5
make
make install
# Create python3 lang:
createlang plpython3u sblab