Try dropping the MACOSX_DEPLOYMENT_TARGET option completely. When I built 2.6.2 on Snow Leopard, I used:
./configure --prefix=/usr/local/python-2.6.2 --enable-framework=/usr/local/python-2.6.2/frameworks --enable-universalsdk=/ --with-universal-archs=all I'll get down 2.6.4 and see what happens when I try and built it. Graham 2009/12/24 Adam Wolf <[email protected]>: > I've been bashing my head against the wall trying to get 2.6.4 > installed form source. > > First, --with-universal-archs=all doesn't work on Snow Leopard: > > http://bugs.python.org/issue6245 > > Roland mentions only adding the "intel" and "3-way" options for 2.7 > and 3.1 but it seems to be available in my 2.6.4 configure script. So > running it with > > --with-universal-archs=intel > > gets past the wchar_t size error, but now I get: > > ... > configure: creating ./config.status > config.status: error: cannot find input file: Mac/Makefile.in > ... > > In fact, just ./configure gives me the same error. > > My /Mac directory is completely empty so I'm thinking its a bug in > python's configure script. I seem to be the only person in the world > who has had this problem. > > Could using the Mac Installer Disc Image work? Otherwise I'll open a > bug with the python guys if you don't have any other ideas. > > Thanks > > Adam > > On Dec 23, 4:47 pm, Graham Dumpleton <[email protected]> > wrote: >> 2009/12/24 Adam Wolf <[email protected]>: >> >> > Ok, I'll give that a shot now (Apple's 2.6.1 with Homebrew's >> > postgresql was not compatible with psycopg2). >> >> > I'm using 10.6 so shouldn't it be: >> >> > --enable-universalsdk=/ MACOSX_DEPLOYMENT_TARGET=10.6 >> >> Not necessarily. That says what the oldest version of MacOS X is that >> you want to support with that installation. So, no harm in leaving it >> as 10.5 and not sure you would get any benefit in saying to target >> 10.6. >> >> Graham >> >> >> >> > ? >> >> > Thanks >> >> > On Dec 23, 4:11 pm, Graham Dumpleton <[email protected]> >> > wrote: >> >> Can you install Python 2.6.4 from source code yourself. >> >> >> You will need to have XCode installed. >> >> >> Use 'configure' arguments to Python as documented in: >> >> >> ./configure --prefix=/usr/local/python-2.6.4 \ >> >> --enable-framework=/usr/local/python-2.6.4/frameworks \ >> >> --enable-universalsdk=/ MACOSX_DEPLOYMENT_TARGET=10.5 \ >> >> --with-universal-archs=all >> >> >> This will install stuff under /usr/local/python-2.6.4 and >> >> /Applications/Python 2.6. >> >> >> When you build mod_wsgi then use: >> >> >> ./configure --with-python=/usr/local/python-2.6.4/bin/python >> >> >> You obviously will need to install Python wrappers for PostgreSQL and >> >> other Python packages with that /usr/local/python2.6 installation. >> >> >> Graham >> >> >> 2009/12/24 Adam Wolf <[email protected]>: >> >> >> > Graham- >> >> >> > The version of Python 2.6.1 as supplied by Apple is incompatible with >> >> > the postgres DB adapter psycopg2. A workaround is running: >> >> >> > defaults write com.apple.versioner.python Prefer-32-Bit -bool yes >> >> >> > to force python to run in 32 bit mode. >> >> >> > This solved the problem while using the python development server. >> >> > However, when I went to set up a production environment using >> >> > mod_wsgi, psycopg2 started to throw the same error as before: >> >> >> > Symbol not found: _PQbackendPID >> >> >> > I imagine that mod_wsgi running in 64-bit mode is forcing python back >> >> > into 64-bit mode also, which causes psycopg2 to fail. Perhaps I could >> >> > force mod_wsgi to run in 32-bit mode also... but that kinda sucks. >> >> >> > Then I found this: >> >> >> >http://benkreeger.com/personal/conquering-symbol-not-found-_pqbackendpid >> >> >> > which advised using Homebrew to install python and postgresql to >> >> > resolve the issue. This did resolve the issue on the django >> >> > development server in 64-bit mode. However, upon review of this advice >> >> > I don't see why it is necessary to use the Homebrew python >> >> > installation. >> >> >> > I'll give it a shot with Apple's 2.6.1 now... >> >> >> > On Dec 23, 3:11 pm, Graham Dumpleton <[email protected]> >> >> > wrote: >> >> >> 2009/12/24 Adam Wolf <[email protected]>: >> >> >> >> > Graham- >> >> >> >> > CONFIG_ARGS= '--prefix=/usr/local/Cellar/python/2.6.4' 'CC=/ >> >> >> > Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2' 'CFLAGS=-O4 >> >> >> > -march=core2 - >> >> >> > mmmx -msse4.1 -w -pipe' >> >> >> > 'LDFLAGS=-L/usr/local/Cellar/readline/6.0/lib' >> >> >> > 'CPPFLAGS=-I/usr/local/Cellar/readline/6.0/include' >> >> >> >> > This is a python installation made by the new mac package management >> >> >> > script Homebrew. I'm following this advice: >> >> >> >> Which is not installed as a framework install, nor even as a dylib >> >> >> install. This possibly makes it unusable for embedding such as with >> >> >> Apache/mod_wsgi as it only provides a static library and under MacOS X >> >> >> it may not be possible to link them into dynamically loadable objects. >> >> >> >> Is there a specific reason why you cannot just use Python 2.6.1 as >> >> >> supplied by Apple? What changes are there in 2.6.2-2.6.4 that you >> >> >> cannot do without? >> >> >> >> Graham >> >> >> >> >http://benkreeger.com/personal/conquering-symbol-not-found-_pqbackendpid >> >> >> >> > to solve the problem described there. The alternative is to force >> >> >> > everything, including mod_wsgi, to run in 32-bit mode which is not >> >> >> > preferable to me. >> >> >> >> > Archimedes:config awolf$ ls -las /usr/local/Cellar/python/2.6.4/lib >> >> >> > total 8376 >> >> >> > 0 drwxr-xr-x 4 root wheel 136 Dec 19 18:33 . >> >> >> > 0 drwxr-xr-x 8 root wheel 272 Dec 19 18:33 .. >> >> >> > 8376 -r--r--r-- 2 root wheel 4285288 Dec 19 18:33 libpython2.6.a >> >> >> > 0 drwxr-xr-x 631 root wheel 21454 Dec 19 18:33 python2.6 >> >> >> > Archimedes:config awolf$ ls -las /usr/local/Cellar/python/2.6.4/lib/ >> >> >> > python2.6/config >> >> >> > total 8576 >> >> >> > 0 drwxr-xr-x 12 root wheel 408 Dec 19 18:33 . >> >> >> > 0 drwxr-xr-x 631 root wheel 21454 Dec 19 18:33 .. >> >> >> > 88 -rw-r--r-- 1 root wheel 42950 Dec 19 18:33 Makefile >> >> >> > 40 -rw-r--r-- 1 root wheel 18265 Dec 19 18:33 Setup >> >> >> > 8 -rw-r--r-- 1 root wheel 368 Dec 19 18:33 Setup.config >> >> >> > 8 -rw-r--r-- 1 root wheel 41 Dec 19 18:33 Setup.local >> >> >> > 8 -rw-r--r-- 1 root wheel 2077 Dec 19 18:33 config.c >> >> >> > 8 -rw-r--r-- 1 root wheel 1457 Dec 19 18:33 config.c.in >> >> >> > 16 -rwxr-xr-x 1 root wheel 7122 Dec 19 18:33 install-sh >> >> >> > 8376 -r--r--r-- 2 root wheel 4285288 Dec 19 18:33 libpython2.6.a >> >> >> > 16 -rwxr-xr-x 1 root wheel 7431 Dec 19 18:33 makesetup >> >> >> > 8 -rw-r--r-- 1 root wheel 2060 Dec 19 18:33 python.o >> >> >> > Archimedes:config awolf$ file /usr/local/Cellar/python/2.6.4/lib/ >> >> >> > python2.6/config/libpython* >> >> >> > /usr/local/Cellar/python/2.6.4/lib/python2.6/config/libpython2.6.a: >> >> >> > current ar archive random library >> >> >> >> > Thanks, >> >> >> >> > -Adam >> >> >> >> > On Dec 22, 7:54 pm, Graham Dumpleton <[email protected]> >> >> >> > wrote: >> >> >> >> 2009/12/23 Adam Wolf <[email protected]>: >> >> >> >> >> > Hello, >> >> >> >> >> > I'm trying to run mod_wsgi 3.1 under Apache 2.2.14 using a >> >> >> >> > non-default >> >> >> >> > python installation on Mac OS X 10.6. >> >> >> >> >> > After downloading the mod_wsgi source I run: >> >> >> >> >> > sudo apachectl -k stop >> >> >> >> >> > then >> >> >> >> >> > ./configure >> >> >> >> > --with-python=/usr/local/Cellar/python/2.6.4/bin/python >> >> >> >> > make >> >> >> >> > sudo make install >> >> >> >> >> > I then start up apache again >> >> >> >> >> > sudo apachectl -k start >> >> >> >> > When I cat /var/log/httpd/error_log I see: >> >> >> >> > [Mon Dec 21 12:27:26 2009] [warn] mod_wsgi: Compiled for >> >> >> >> > Python/2.6.4. >> >> >> >> > [Mon Dec 21 12:27:26 2009] [warn] mod_wsgi: Runtime using Python/ >> >> >> >> > 2.6.1. >> >> >> >> > [Mon Dec 21 12:27:26 2009] [notice] Apache/2.2.14 (Unix) DAV/2 >> >> >> >> > mod_wsgi/3.1 Python/2.6.1 configured -- resuming normal operations >> >> >> >> >> > When I run otool -L mod_wsgi.so is see: >> >> >> >> >> > mod_wsgi.so: >> >> >> >> > /System/Library/Frameworks/Python.framework/Versions/2.6/Python >> >> >> >> > (compatibility version 2.6.0, current version 2.6.1) >> >> >> >> > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current >> >> >> >> > version 125.0.0) >> >> >> >> >> > It linking with the system framework- not the one I installed in >> >> >> >> > /usr/ >> >> >> >> > local using Homebrew. >> >> >> >> >> > Upon Graham's advice at StackOverflow (http://stackoverflow.com/ >> >> >> >> > questions/1942462/modwsgi-on-snow-leopard-python-version-mismatch) >> >> >> >> > I >> >> >> >> > tried cleaning my build and then running the configure script >> >> >> >> > with -- >> >> >> >> > disable-framework >> >> >> >> >> > ./configure >> >> >> >> > --with-python=/usr/local/Cellar/python/2.6.4/bin/python -- >> >> >> >> > disable-framework >> >> >> >> >> > This gave me the same results. >> >> >> >> >> > Here is the output of one such build attempt: >> >> >> >> >> > Archimedes:~ awolf$ sudo rm /opt/apache2/modules/mod_wsgi.so >> >> >> >> > Password: >> >> >> >> > Archimedes:~ awolf$ cd ~/Downloads/mod_wsgi-3.1 >> >> >> >> > Archimedes:mod_wsgi-3.1 awolf$ rm -rf build >> >> >> >> > Archimedes:mod_wsgi-3.1 awolf$ make distclean >> >> >> >> > rm -rf .libs >> >> >> >> > rm -f mod_wsgi.o mod_wsgi.la mod_wsgi.lo mod_wsgi.slo mod_wsgi.loT >> >> >> >> > rm -f config.log config.status >> >> >> >> > rm -rf autom4te.cache >> >> >> >> > rm -f Makefile Makefile.in >> >> >> >> > Archimedes:mod_wsgi-3.1 awolf$ ./configure >> >> >> >> > --with-python=/usr/local/ >> >> >> >> > Cellar/python/2.6.4/bin/python --disable-framework >> >> >> >> > checking for apxs2... no >> >> >> >> > checking for apxs... /opt/apache2/bin/apxs >> >> >> >> > checking Apache version... 2.2.14 >> >> >> >> > configure: creating ./config.status >> >> >> >> > config.status: creating Makefile >> >> >> >> > Archimedes:mod_wsgi-3.1 awolf$ make >> >> >> >> > /opt/apache2/bin/apxs -c -I/usr/local/Cellar/python/2.6.4/include/ >> >> >> >> > python2.6 -DNDEBUG -Wc,'-arch x86_64' mod_wsgi.c >> >> >> >> > -L/usr/local/Cellar/ >> >> >> >> > python/2.6.4/lib -L/usr/local/Cellar/python/2.6.4/lib/python2.6/ >> >> >> >> > config -arch x86_64 -lpython2.6 -ldl >> >> >> >> >> That this is using: >> >> >> >> >> -L/usr/local/Cellar/python/2.6.4/lib >> >> >> >> -L/usr/local/Cellar/python/2.6.4/lib/python2.6/config -lpython2.6 >> >> >> >> >> indicates --enable-framework did what it was mean't to. Ie., switch >> >> >> >> from using -F/-framework to -L/-l. >> >> >> >> >> Can you look in: >> >> >> >> >> -L/usr/local/Cellar/python/2.6.4/lib/python2.6/config/Makefile >> >> >> >> >> and post the value of the CONFIG_ARGS variable. >> >> >> >> >> Is this Python installation one you installed from source, or is it >> >> >> >> a >> >> >> >> binary package from somewhere else such as MacPorts? MacPorts give >> >> >> >> so >> >> >> >> much grief. >> >> >> >> >> While you at it, what do you get for: >> >> >> >> >> ls -las /usr/local/Cellar/python/2.6.4/lib >> >> >> >> ls -las /usr/local/Cellar/python/2.6.4/lib/python2.6/config >> >> >> >> >> file >> >> >> >> /usr/local/Cellar/python/2.6.4/lib/python2.6/config/libpython* >> >> >> >> >> Graham >> >> >> >> >> > /Library/Webserver/build/libtool --silent --mode=compile gcc >> >> >> >> > -prefer- >> >> >> >> > pic -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp-precomp -g >> >> >> >> > -O2 - >> >> >> >> > I/opt/apache2/include -I/opt/apache2/include -I/opt/apache2/ >> >> >> >> > include -arch x86_64 -I/usr/local/Cellar/python/2.6.4/include/ >> >> ... >> >> read more » > > -- > > You received this message because you are subscribed to the Google Groups > "modwsgi" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/modwsgi?hl=en. > > > -- You received this message because you are subscribed to the Google Groups "modwsgi" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/modwsgi?hl=en.
