[issue1099] Mac compile fails with pydebug and framework enabled
Ned Deily
report at bugs.python.org
Sat Mar 12 13:22:19 CET 2011
Ned Deily <nad at acm.org> added the comment:
The patch, as is, fixes another build failure mode that has been reported (http://article.gmane.org/gmane.comp.python.general/685151):
./configure --enable-framework ; make
I verified that 3.2 builds without the patch fail on both 10.5 ppc and 10.4 ppc (10.4 fails thusly):
ld: Undefined symbols:
___divdi3
___moddi3
___fixdfdi
/usr/bin/libtool: internal link edit command failed
and builds works and tests pass with the patch on both.
It doesn't totally fix yet another use case (http://permalink.gmane.org/gmane.comp.python.general/685512), that of building an i386-only Python on a 10.6 64-bit-capable system:
./configure '--enable-framework' 'CFLAGS=-arch i386' 'CPPFLAGS=-arch i386' 'LDFLAGS=-arch i386'
With the patch, the build gets a bit further and the modified libpython make step emits the warning:
ld: warning: in libpython3.3m.a, file was built for unsupported file format which is not the architecture being linked (x86_64)
but then the python.exe build step fails with:
ld: warning: in Python.framework/Versions/3.3/Python, file was built for unsupported file format which is not the architecture being linked (i386)
The problem is that the libpython step (both originally and in the patch) does not take LDFLAGS into account. Changing one line in the patch fixes that:
$(CC) -o $(LDLIBRARY) @UNIVERSAL_ARCH_FLAGS@ -dynamiclib \
- @FRAMEWORK_LINK_FLAGS@ \
+ @FRAMEWORK_LINK_FLAGS@ $(PY_LDFLAGS) \
-all_load $(LIBRARY) -Wl,-single_module \
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue1099>
_______________________________________
More information about the Python-bugs-list
mailing list