On Wed, Jan 17, 2001 at 06:09:47PM -0500, Andrew Kuchling wrote:
> >On BSDI, readline sits in /usr/local or /usr/contrib, and isn't detected by
> >setup.py. Also, SSL support for the socket module was not enabled, though
> >OpenSSL is installed, in the default path.
>> Can you take a look at the detection code in setup.py and see what's
> going wrong. I believe it should be found if OpenSSL is in
> /usr/local/, but /usr/contrib isn't checked currently.
Well, OpenSSL rests in the default location, which is
/usr/local/ssl/include/openssl. Haven't the time to look into it right now,
sorry.
> >The Tcl/Tk header files are stored in /usr/include/tcl<ver>/ on Debian,
> >which I personally like a lot, though it's probably a bitch to autodetect.
> >(I tried, using autoconf ;-P)
> There's code to handle Debian, though I have no way of testing it, and
> it worked on Neil's Debian box for some reason. Search for
> debian_tcl_include in setup.py, and see if you can fix it.
Ah, yes. The problem in my case is that the *library* files are just in
/usr/lib, but the include files are not. I re-indented the code to pull the
debian-specific code out of the 'if prefix + os.sep + 'lib' not in
lib_dirs' block, and it works now. Haven't tested it on other code yet, but
I think it should work regardless.
> >distutils.errors.DistutilsPlatformError: invalid Python installation: unable to open /usr/lib/python2.1/config/Makefile (No such file or directory)
> Are you sure setup.py is up to date; do a 'cvs update setup.py' to check.
> You might get a "setup.py is in the way; remove it' message if you
> downloaded the first setup.py script manually.
D'oh, I guess not. I thought I did (I did on all other platforms :) but I
guess I didn't, 'cause it works now. Thanx.
> >without 'make clean' anymore. You get a lot of undefined-symbol warnings
> >(see below.) If you run 'make clean;make test' it also doesn't work, because
> >the build directory is not in the Python library path, and regrtest.py
> >requires (at least) the time module.
> Again, be sure the tree is up to date; I think this stems from
> attempting to compile the signal module as shared, which doesn't work.
This happened even with completely fresh, newly checked out trees, on all
but FreeBSD (three different trees: Debian woody, BSDI 4.0 and BSDI 4.1) so
I'm pretty sure that's not it.
It works now, though, so I guess the move from a dynamic signalmodule to a
static one does the trick ;) I got 'make test' working by applying the
following patch to Makefile{,.in}, and running 'make PYTHONPATH=.:<builddir>
test' (determining builddir by hand, for now.):
***************
*** 216,223 ****
TESTPYTHON= ./python$(EXE) -tt
test: all
-rm -f $(srcdir)/Lib/test/*.py[co]
! -PYTHONPATH= $(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
! PYTHONPATH= $(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
# Install everything
install: altinstall bininstall maninstall
--- 216,223 ----
TESTPYTHON= ./python$(EXE) -tt
test: all
-rm -f $(srcdir)/Lib/test/*.py[co]
! -PYTHONPATH=$(PYTHONPATH) $(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
! PYTHONPATH=$(PYTHONPATH) $(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
# Install everything
install: altinstall bininstall maninstall
And because of that, I also noticed something funny: BSDI calls itself
'BSD/OS <version>', so distutils actually makes a directory called 'lib.bsd'
and 'temp.bsd', with inside those a directory 'os-<version>-i386-2.1'. Is
that a distutils bug, a setup.py bug, or intentional behaviour of one of the
two ?
--
Thomas Wouters <thomas@xs4all.net>
Hi! I'm a .signature virus! copy me into your .signature file to help me spread!