CVS configure failure

Started by Bruce Momjianover 21 years ago10 messages
#1Bruce Momjian
pgman@candle.pha.pa.us

I get this failure on current CVS running configure --with-python:

checking for python... /usr/local/bin/python
checking for Python distutils module... no
configure: error: distutils module not found
gmake: *** [config.status] Error 1

I have python 1.5(1.5.2?).

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#2Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#1)
Re: CVS configure failure

Bruce Momjian wrote:

I get this failure on current CVS running configure --with-python:

checking for python... /usr/local/bin/python
checking for Python distutils module... no
configure: error: distutils module not found
gmake: *** [config.status] Error 1

What part of the error message is giving you trouble? :)

--
Peter Eisentraut
http://developer.postgresql.org/~petere/

#3Gaetano Mendola
mendola@bigfoot.com
In reply to: Bruce Momjian (#1)
Re: CVS configure failure

Bruce Momjian wrote:

I get this failure on current CVS running configure --with-python:

checking for python... /usr/local/bin/python
checking for Python distutils module... no
configure: error: distutils module not found
gmake: *** [config.status] Error 1

I have python 1.5(1.5.2?).

This is the check that I suggest to add recently :-(
See the thread "x86_64 configure problem" on hackers

You need to install the distutils, and how I wrote in that thread, it's
not clear that that module is installed by default when you install
python.

Regards
Gaetano Mendola

#4Gaetano Mendola
mendola@bigfoot.com
In reply to: Bruce Momjian (#1)
Re: CVS configure failure

Bruce Momjian wrote:

I get this failure on current CVS running configure --with-python:

checking for python... /usr/local/bin/python
checking for Python distutils module... no
configure: error: distutils module not found
gmake: *** [config.status] Error 1

I have python 1.5(1.5.2?).

This is the check that I suggest to add recently :-(
See the thread "x86_64 configure problem" on hackers

You need to install the distutils, and how I wrote in that thread, it's
not clear that that module is installed by default when you install
python.

Regards
Gaetano Mendola

#5Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Gaetano Mendola (#4)
Re: CVS configure failure

Gaetano Mendola wrote:

Bruce Momjian wrote:

I get this failure on current CVS running configure --with-python:

checking for python... /usr/local/bin/python
checking for Python distutils module... no
configure: error: distutils module not found
gmake: *** [config.status] Error 1

I have python 1.5(1.5.2?).

This is the check that I suggest to add recently :-(
See the thread "x86_64 configure problem" on hackers

You need to install the distutils, and how I wrote in that thread, it's
not clear that that module is installed by default when you install
python.

So distutils is now required to build python? If that is intended, I
will just skip building python. I didn't realize we had new
requirements for python, but that is fine.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#6Joe Conway
mail@joeconway.com
In reply to: Bruce Momjian (#5)
Re: CVS configure failure

Bruce Momjian wrote:

So distutils is now required to build python? If that is intended, I
will just skip building python. I didn't realize we had new
requirements for python, but that is fine.

Yes, the python docs imply that it is a reasonable expectation. Here's a
snippet from the thread a week or two ago:

Joe Conway wrote:

What version of python comes with RH2.1?

1.5.2

In any case, the online documentation for python suggests that it
is reasonable to expect that distutils is already installed (by
default for python >= 1.6, and by the user for python 1.5.2). See:
http://www.python.org/doc/2.2.3/dist/intro.html

If there are no other objections, I'll commit the attached in about
24 hours.

And at the reference URL is this:

"This document only covers using the Distutils to distribute your Python
modules. Using the Distutils does not tie you to Python 1.6, though: the
Distutils work just fine with Python 1.5.2, and it is reasonable (and
expected to become commonplace) to expect users of Python 1.5.2 to
download and install the Distutils separately before they can install
your modules. Python 1.6 (or later) users, of course, won't have to add
anything to their Python installation in order to use the Distutils to
install third-party modules."

Without distutils there is no way to find the config Makefile on 64 bit
architectures.

Joe

#7Tom Lane
tgl@sss.pgh.pa.us
In reply to: Joe Conway (#6)
Re: CVS configure failure

Joe Conway <mail@joeconway.com> writes:

Bruce Momjian wrote:

So distutils is now required to build python?

Yes, the python docs imply that it is a reasonable expectation.

FWIW, CVS tip still builds --with-python on my pretty-nearly-stock
RHL 8.0 box, so distutils was standard a couple years ago ...

regards, tom lane

#8Neil Conway
neilc@samurai.com
In reply to: Bruce Momjian (#5)
Re: CVS configure failure

On Wed, 2004-09-22 at 00:16, Bruce Momjian wrote:

So distutils is now required to build python? If that is intended, I
will just skip building python. I didn't realize we had new
requirements for python, but that is fine.

Should this be documented in the installation instructions?

-Neil

#9James William Pye
flaw@rhid.com
In reply to: Neil Conway (#8)
1 attachment(s)
Re: CVS configure failure

On Tue, 2004-09-21 at 17:13, Neil Conway wrote:

Should this be documented in the installation instructions?

I think so.

I figure just a mention should be enough.
(Also add some productname tags around 'Python'.)

--
Regards,
James William Pye

Attachments:

pginstal.difftext/x-patch; charset=UTF-8; name=pginstal.diffDownload
Index: installation.sgml
===================================================================
RCS file: /projects/cvsroot/pgsql-server/doc/src/sgml/installation.sgml,v
retrieving revision 1.203
diff -c -r1.203 installation.sgml
*** installation.sgml	20 Jun 2004 01:32:46 -0000	1.203
--- installation.sgml	22 Sep 2004 05:03:30 -0000
***************
*** 170,181 ****
      <listitem>
       <para>
        To build the PL/Python server programming language, you need a
!       Python installation, including the header files.  Since
!       PL/Python will be a shared library, the
        <indexterm><primary>libpython</primary></indexterm>
        <filename>libpython</filename> library must be a shared library
        also on most platforms.  This is not the case in a default
!       Python installation.
       </para>
  
       <para>
--- 170,181 ----
      <listitem>
       <para>
        To build the PL/Python server programming language, you need a
!       <productname>Python</productname> installation with the header files and
!       the distutils module.  Since PL/Python will be a shared library, the
        <indexterm><primary>libpython</primary></indexterm>
        <filename>libpython</filename> library must be a shared library
        also on most platforms.  This is not the case in a default
!       <productname>Python</productname> installation.
       </para>
  
       <para>
#10Neil Conway
neilc@samurai.com
In reply to: James William Pye (#9)
1 attachment(s)
Re: CVS configure failure

On Wed, 2004-09-22 at 15:29, James William Pye wrote:

I think so.

Patch applied with some additional fixes -- the patch as I applied it is
attached. Thanks!

-Neil

Attachments:

python-install-docs-1.patchtext/x-patch; charset=iso-8859-1; name=python-install-docs-1.patchDownload
Index: doc/src/sgml/installation.sgml
===================================================================
RCS file: /home/neilc/private-cvsroot/pgsql-server/doc/src/sgml/installation.sgml,v
retrieving revision 1.203
diff -c -r1.203 installation.sgml
*** doc/src/sgml/installation.sgml	20 Jun 2004 01:32:46 -0000	1.203
--- doc/src/sgml/installation.sgml	23 Sep 2004 00:27:49 -0000
***************
*** 144,152 ****
        <indexterm><primary>libperl</primary></indexterm>
        <filename>libperl</filename> library must be a shared library
        also on most platforms.  This appears to be the default in
!       recent Perl versions, but it was not in earlier versions, and in
!       general it is the choice of whomever installed Perl at your
!       site.
       </para>
  
       <para>
--- 144,152 ----
        <indexterm><primary>libperl</primary></indexterm>
        <filename>libperl</filename> library must be a shared library
        also on most platforms.  This appears to be the default in
!       recent <productname>Perl</productname> versions, but it was not
!       in earlier versions, and in general it is the choice of whomever
!       installed Perl at your site.
       </para>
  
       <para>
***************
*** 170,185 ****
      <listitem>
       <para>
        To build the PL/Python server programming language, you need a
!       Python installation, including the header files.  Since
!       PL/Python will be a shared library, the
!       <indexterm><primary>libpython</primary></indexterm>
!       <filename>libpython</filename> library must be a shared library
!       also on most platforms.  This is not the case in a default
!       Python installation.
       </para>
  
       <para>
!       If after building and installing you have a file called
        <filename>plpython.so</filename> (possibly a different
        extension), then everything went well.  Otherwise you should
        have seen a notice like this flying by:
--- 170,189 ----
      <listitem>
       <para>
        To build the PL/Python server programming language, you need a
!       <productname>Python</productname> installation with the header
!       files and the distutils module.  The distutils module is
!       included by default with <productname>Python</productname> 1.6
!       and later; users of earlier versions of
!       <productname>Python</productname> will need to install it.
       </para>
  
       <para>
!       Since PL/Python will be a shared library, the
!       <indexterm><primary>libpython</primary></indexterm>
!       <filename>libpython</filename> library must be a shared library
!       also on most platforms.  This is not the case in a default
!       <productname>Python</productname> installation.  If after
!       building and installing you have a file called
        <filename>plpython.so</filename> (possibly a different
        extension), then everything went well.  Otherwise you should
        have seen a notice like this flying by:
***************
*** 188,204 ****
  *** You might have to rebuild your Python installation.  Refer to
  *** the documentation for details.
  </screen>
!       That means you have to rebuild (part of) your Python
!       installation to supply this shared library.
       </para>
  
       <para>
!       If you have problems, run Python 2.3 or later's configure using the 
!       <literal>--enable-shared</> flag.  On some operating systems you 
!       don't have to build a shared library, but you will have 
!       to convince the <productname>PostgreSQL</> build system of this.
!       Consult the <filename>Makefile</filename> in the
!       <filename>src/pl/plpython</filename> directory for details.
       </para>
      </listitem>
  
--- 192,209 ----
  *** You might have to rebuild your Python installation.  Refer to
  *** the documentation for details.
  </screen>
!       That means you have to rebuild (part of) your
!       <productname>Python</productname> installation to supply this
!       shared library.
       </para>
  
       <para>
!       If you have problems, run <productname>Python</> 2.3 or later's
!       configure using the <literal>--enable-shared</> flag.  On some
!       operating systems you don't have to build a shared library, but
!       you will have to convince the <productname>PostgreSQL</> build
!       system of this.  Consult the <filename>Makefile</filename> in
!       the <filename>src/pl/plpython</filename> directory for details.
       </para>
      </listitem>