minaco2 / distcc

Automatically exported from code.google.com/p/distcc
GNU General Public License v2.0
0 stars 0 forks source link

distcc 3.1 deb pump fails because of missing python2.4 #47

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
1.
$ distcc --version
distcc 3.1 x86_64-unknown-linux-gnu
  (protocols 1, 2 and 3) (default port 3632)
  built Dec  2 2008 17:00:34
Copyright (C) 2002, 2003, 2004 by Martin Pool.
Includes miniLZO (C) 1996-2002 by Markus Franz Xaver Johannes Oberhumer.
Portions Copyright (C) 2007-2008 Google.

2. 
$ cat /etc/debian_version
squeeze/sid
$ g++ --version
g++ (Debian 4.3.3-3) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ uname -a
Linux brasilia 2.6.30-rc5-sh-pentiumm #1 PREEMPT Sun May 10 07:05:59 CEST
2009 i686 GNU/Linux

3.-7.
$ LANG=C pump make -j 20
__________Using distcc-pump from /usr/bin
__________Using 26 distcc servers in pump mode
/usr/bin/pump: line 287: /usr/bin/python2.4: No such file or directory
__________Expected a socket at '/tmp/distcc-pump.wdk5fm/socket'
__________Could not start distcc-pump include server

No python2.4 is found. I have python 2.5 installed, and since the deb
package does not define any dependency to python 2.4 it did not get
installed with distcc.

$ python --version
Python 2.5.4
$ ls /usr/bin/python*
/usr/bin/python  /usr/bin/python2.5

Please either include a dependency on python 2.4 or do not use a specific
version of python, use /usr/bin/python instead.

Thanks,
Sten

Original issue reported on code.google.com by sten.hei...@gmail.com on 12 May 2009 at 4:04

GoogleCodeExporter commented 9 years ago
In another bug report, Fergus said the .deb was generated from the .rpm via 
alien. I 
guess alien doesn't set the package dependencies correctly? It would also be 
trivial 
to set the first line in pump to something else.

Original comment by zhang...@gmail.com on 25 Aug 2009 at 12:30

GoogleCodeExporter commented 9 years ago
The first line in pump is "#!/bin/sh".
The line which causes the error is line 287, which executes $PYTHON,
which is set on line 31 of the pump script, to a value determined by configure.

The source distribution's configure script checks for python 2.5, and then 
python
2.4, and if none of those are found in PATH, uses /usr/bin/python. So the source
distribution is doing the right thing.  The problem comes only in the binary
distribution, which ships the pump script as configured on the build machine, 
but
without recording the right dependency in the .deb.

Using /usr/bin/python in the binary distribution would cause obscure problems on
systems where /usr/bin/python is python 2.3 or earlier.  So I think probably 
the best
way to fix it is to record the right dependency in the .deb.  But I don't know 
how to
do that.  Patches welcome...

Original comment by fergus.h...@gmail.com on 26 Aug 2009 at 7:20