[gtk-osx-users] Gotcha building python 2.6 using setup_sdk 10.6
- From: Richard Procter <richard n procter gmail com>
- To: gtk-osx-users-list gnome org
- Subject: [gtk-osx-users] Gotcha building python 2.6 using setup_sdk 10.6
- Date: Fri, 15 Feb 2013 11:12:14 +1300
Hi all,
I found a gotcha when building python 2.6.8 with the latest gtk-osx build
scripts yesterday on 10.6[1] when the resultant binary surprised me by
displaying:
Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
The only thing I had changed from the stock script was:
setup_sdk(target="10.6", sdk_version="10.6", architectures=["i386"])
(setting _gtk_osx_use_jhbuild_python = True had no effect).
Looking at .jhbuildrc, a non-native setup_sdk sets a bunch of compiler flags,
one being:
environ_prepend("LDFLAGS", "-L" + "/Developer/SDKs/MacOSX10.6.sdk" + "/usr/lib")
, which when added to the stock .jhbuildrc-custom is sufficient to cause the problem.
Digging deeper, yes, this causes the python binary to reference the 10.6 SDK python library.[2]
I suspect this is ultimately an issue with python's build system giving LDFLAGS too
high priority. My workaround is to build python 2.7 instead, which doesn't exist on 10.6.
best,
Richard.
[1]
$ <fresh checkout of gtk-osx>
$ jhbuild build python
[2]
without LDFLAGS:
$ otool -L `which python`
gtk/inst/bin/python:
/Users/rix/work/doview/development/osx/gtk-osx/test/gtk/inst/lib/libpython2.6.dylib (compatibility
version 2.6.0, current version 2.6.0) <-- OK
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version
150.0.0, current version 550.44.0)
with LDFLAGS:
$ otool -L `which python`
/Users/rix/work/doview/development/osx/gtk-osx/test/gtk/inst/bin/python:
/System/Library/Frameworks/Python.framework/Versions/2.6/Python (compatibility version 2.6.0, current
version 2.6.1) <--- System SDK!
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version
150.0.0, current version 550.44.0)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]