mod_python install forces Python libraries into system-wide install directory
-----------------------------------------------------------------------------
Key: MODPYTHON-252
URL: https://issues.apache.org/jira/browse/MODPYTHON-252
Project: mod_python
Issue Type: Bug
Components: core
Affects Versions: 3.3.1
Environment: Tested on Linux, with mod_python 3.3.1
Reporter: Josh Kupershmidt
Priority: Minor
Fix For: 3.3.1
I need to have mod_python installed as an unprivileged user. I have Apache
installed as an unprivileged user, to directory
/home/user/apache/2.0.63/...
And I need mod_python.so installed to
/home/user/apache/2.0.63/modules
The arguments I pass to ./configure are:
./configure --with-apache=/home/user/apache/2.0.63/
--prefix=/home/user/apache/2.0.63/modules/
--with-python=/directory/to/system-wide/install/of/python
--with-apxs=/home/user/apache/2.0.63/bin
This all works fine for installing mod_python.so into Apache's modules
directory. However, the Python libraries are being forced into
/directory/to/system-wide/install/of/python/lib/python2.5/site-packages. I
really want these Python libraries installed into /home/user/libraries/
I've tracked the problem, and my somewhat kludgy workaround, down to
./dist/Makefile.in. The following lines in ./dist/Makefile.in note that root
privileges may be required:
# this may require root priviledges
install_py_lib: mod_python src
@cd src; $(MAKE) psp_parser.c
if test -z "$(DESTDIR)" ; then \
export LDFLAGS="-L$(PYTHON_LIBDIR)" ; $(PYTHON_BIN) setup.py
install --optimize 2 --force ; \
else \
export LDFLAGS="-L$(PYTHON_LIBDIR)" ; $(PYTHON_BIN) setup.py
install --optimize 2 --force --root $(DESTDIR) ; \
To get around the requirement for installing the Python libraries system-wide,
I simply added --prefix=/home/user/libraries/ after "setup.py install" in the
above lines as a workaround.
Note that the $DESTDIR variable in the above lines does not do what I want: I
tried manually setting DESTDIR, but it forced the entire mod_python install (of
mod_python.so, as well as the Python libraries) into subdirectories of
/home/user/libraries. It also screwed up any other installs (e.g. httpd) done
at the same time which also depend on the DESTDIR environment variable, if
exported globally.
I recommend a ./configure flag be added to allow the user to specify which
directory the mod_python Python libraries should be installed into, and perhaps
a note about setting PYTHONPATH appropriately.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.