[mod_python] trying to upgrade to Python2.4, Apache2.0.53, Mod_Python3.1.4 on Mac OsX

John Raines jrraines at comcast.net
Tue Feb 15 19:40:23 EST 2005

The libraries certainly seem to be there:

jraines-Computer:/usr/local jrraines$ ls lib/python2.4/config
Makefile        Setup           Setup.config    Setup.local     
config.c        config.c.in     install-sh      libpython2.4.a  
makesetup       python.o
jraines-Computer:/usr/local jrraines$ ls 
Cookie.py       Session.py      __init__.py     _psp.so         
apache.pyo      cgihandler.pyo  psp.pyo         publisher.pyo   
Cookie.pyc      Session.pyc     __init__.pyc    apache.py       
cgihandler.py   psp.py          publisher.py    util.py
Cookie.pyo      Session.pyo     __init__.pyo    apache.pyc      
cgihandler.pyc  psp.pyc         publisher.pyc   util.pyc

jraines-Computer:/usr/local jrraines$ ls
apache2 bin     include lib     man     share

jraines-Computer:/usr/local jrraines$ ls bin
AlchemyTVSetTuner       pcpmac                  pmvmac                  
psync                   python2.4
idle                    pgetfinfo               psetfinfo               
pydoc                   smtpd.py

jraines-Computer:/usr/local jrraines$ ls lib/python2.4/lib-dynload
ColorPicker.so          _Evt.so                 _Qt.so                  
_csv.so                 audioop.so              gestalt.so              
MacOS.so                _File.so                _Res.so                 
_curses.so              autoGIL.so              grp.so                  
Nav.so                  _Fm.so                  _Scrap.so               
_curses_panel.so        binascii.so             icglue.so               
OSATerminology.so       _Folder.so              _Snd.so                 
_heapq.so               bsddb185.so             imageop.so              
_AE.so                  _Help.so                _TE.so                  
_hotshot.so             bz2.so                  itertools.so            
_AH.so                  _IBCarbon.so            _Win.so                 
_locale.so              cPickle.so              math.so                 
_App.so                 _Icn.so                 _bisect.so              
_multibytecodec.so      cStringIO.so            md5.so                  
_CF.so                  _Launch.so              _bsddb.so               
_random.so              cmath.so                mmap.so                 
_CG.so                  _List.so                _codecs_cn.so           
_socket.so              collections.so          nis.so                  
_CarbonEvt.so           _Menu.so                _codecs_hk.so           
_ssl.so                 crypt.so                operator.so             
_Cm.so                  _Mlte.so                _codecs_iso2022.so      
_testcapi.so            datetime.so             parser.so               
_Ctl.so                 _OSA.so                 _codecs_jp.so           
_tkinter.so             dbm.so                  pwd.so                  
_Dlg.so                 _Qd.so                  _codecs_kr.so           
_weakref.so             fcntl.so                pyexpat.so              
_Drag.so                _Qdoffs.so              _codecs_tw.so           
array.so                gdbm.so                 readline.so

I thought linking Mod_Python to the Python 2.4 code was taken care of 
by the "--with-python=/usr/local/bin/python2.4" ? It seems to have 
gotten the site-packages directory put into the right location.

On Feb 15, 2005, at 5:50 PM, Graham Dumpleton wrote:

> If you really want to use Python 2.4, you are going to have to somehow
> force a reference to the Python library in mod_python.so. Since you 
> aren't
> using a framework install, not sure what the library is you have to 
> force
> link with. You might want to look for Python related libraries in such
> directories as:
>   /usr/local/lib
>   /usr/local/lib/python2.4/config
> BTW, is there anything you really want in Python 2.4? Especially if 
> you are
> a UNIX novice, trying to host two different versions of Python on 
> MacOSX
> can be a problem. I guess at least you didn't use a framework install 
> and
> do it on top of the system supplied version of Python. Doing that can
> really screw things up bad.
> The only catch on using standard MacOSX Python installation is that you
> need to patch src/mod_python.c file in source to workaround a problem
> with it. Use of "worker" may also trigger some other mod_python bugs.
> Fixes for both are detailed in:
>   http://www.dscpl.com.au/projects/vampire/PATCHES
> Graham
> John Raines wrote ..
>> My website had been stable and running without error but I'd been
>> running on 2.3.3, 2.0.52 and 3.1.3; since everything was behind the
>> times I decided to finally reinstall; I made the mistake of doing it 
>> on
>> the drive that everything was being served off of instead of using my
>> backup drive. :-(
>> I installed python 2.4 and it seems to work when I call it from the
>> shell. I did not do a frameworkInstall, which seems to be recommended
>> by some people. I am too much of a unix novice to understand what the
>> implications of frameworkInstall are. I installed apache and 
>> mod_python
>> as follows:
>> cd ~/Desktop/httpd-2.0.53
>> ./configure --enable-so --with-mpm=worker
>> make
>> sudo make install
>> cd ~/Desktop/mod_python-3.1.4
>> ./configure --with apxs=/usr/local/apache2/bin/apxs
>> --with-python=/usr/local/bin/python2.4
>> make
>> sudo make install
>> I restored my old httpd.conf file and my website files. My index.html
>> file is straight html which links to .py files. As soon as I try to
>> access any of the .py stuff I now get an internal server error message
>> and the server log shows this:
>> [Tue Feb 15 16:25:25 2005] [notice] mod_python: Creating 32 session
>> mutexes based on 6 max processes and 25 max threads.
>> [Tue Feb 15 16:25:25 2005] [notice] Apache configured -- resuming
>> normal operations
>> [Tue Feb 15 16:25:36 2005] [error] make_obcallback: could not import
>> mod_python.apache.\n
>> Traceback (most recent call last):
>>    File "/usr/local/lib/python2.4/site-packages/mod_python/apache.py",
>> line 22, in ?
>>      import time
>> ImportError: Failure linking new module: : dyld:
>> /usr/local/apache2/bin/httpd Undefined symbols:
>> /usr/local/lib/python2.4/lib-dynload/time.so undefined reference to
>> _PyArg_Parse expected to be defined in the executable
>> /usr/local/lib/python2.4/lib-dynload/time.so undefined reference to
>> _PyArg_ParseTuple expected to be defined in the executable
>> /usr/local/lib/python2.4/lib-dynload/time.so undefined reference to
>> _PyDict_GetItemString expected to be defined in the executable
>> /usr/local/lib/python2.4/lib-dynload/time.so un
>>                                                               <--what
>> happened here??
>> [Tue Feb 15 16:25:36 2005] [error] make_obcallback: could not import
>> mod_python.apache.
>> for what its worth I can access various parts of the time module when 
>> I
>> run Python2.4 from the shell.
>> Going back through the the mailing list I saw that Graham Dumpleton
>> (back on Dec 23) suggested the output from this might be useful; what 
>> I
>> get is different from what he saw but I'm not sure what to make of my
>> result:
>> jraines-Computer:~/Desktop/Website jrraines$ otool otool -L
>> /usr/local/apache2/modules/mod_python.so
>> otool: can't open file: otool (No such file or directory)
>> /usr/local/apache2/modules/mod_python.so:
>>          /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
>> current version 71.1.1)
>> jraines-Computer:~/Desktop/Website jrraines$ ls
>> /usr/local/apache2/modules
>> httpd.exp       mod_python.so
>> My problem seemed like it might be similar to a thread titled Weird
>> ob_callback problems at the end of Jan. I tried the suggestions Grisha
>> made:Try defining DYLD_FORCE_FLAT_NAMESPACE=1 environment variable
>> before launching httpd.
>> That didn't help either.
>> _______________________________________________
>> Mod_python mailing list
>> Mod_python at modpython.org
>> http://mailman.modpython.org/mailman/listinfo/mod_python

More information about the Mod_python mailing list