Python 3.4 doesn't compile under 32bit 10.6.8

Ned Deily nad at acm.org
Mon Oct 27 15:18:16 PDT 2014


In article <544E208B.6000403 at mathiesen.info>,
 Bjarne D Mathiesen <macintosh at mathiesen.info> 
 wrote:

> Python 3.4 doesn't compile under 10.6.8 :-(

Usually it does: I build upstream python.org releases on 10.6.8, among 
others.

But ...
 
> I'm getting this :
> 
> /usr/bin/llvm-gcc-4.2 -L/macports/lib -Wl,-headerpad_max_install_names
> -arch i386  -Wl,-stack_size,1000000  -framework CoreFoundation
> Python.framework/Versions/3.4/Python -o Modules/_testembed
> Modules/_testembed.o  -lintl -ldl  -framework CoreFoundation
> DYLD_FRAMEWORK_PATH=/macports/var/macports/build/_macports_var_macports_source
> s_rsync.macports.org_release_tarballs_ports_lang_python34/python34/work/Python
> -3.4.2
> ./python -E -S -m sysconfig --generate-posix-vars ;\
> 	if test $? -ne 0 ; then \
> 		echo "generate-posix-vars failed" ; \
> 		rm -f ./pybuilddir.txt ; \
> 		exit 1 ; \
> 	fi
> /bin/sh: line 1: 35604 Segmentation fault
> DYLD_FRAMEWORK_PATH=/macports/var/macports/build/_macports_var_macports_source
> s_rsync.macports.org_release_tarballs_ports_lang_python34/python34/work/Python
> -3.4.2
> ./python -E -S -m sysconfig --generate-posix-vars
> generate-posix-vars failed

> Any way I can fix this -or- am I toast ???

The problem is that the llvm-gcc-4.2 compiler is being used, probably 
one released with the "experimental" Xcode 4 versions late in the life 
of OS X 10.6.  Unfortunately, that compiler is known to be buggy; in 
particular, it has been found to miscompile C code in recent Python 3 
releases, resulting in the interpreter segfault you saw.  (Note, Apple 
no longer ships versions of that hybrid compiler in more recent Xcode 
releases.)  See http://bugs.python.org/issue13241 for more info.

Some options: use the plain gcc-4.2 compiler rather than the default 
hybrid llvm-gcc-4.2 one if it is included in the version of Xcode you 
have installed (I just got rid of my seldom-used 10.6/Xcode 4 VM variant 
the other day so I can't easily check this); or revert to the old 
reliable Xcode 3.2.6 for 10.6 which definitely works; or (untested) 
install and use the MacPorts apple-gcc42 port.  In any case, the 
MacPorts python3 ports should be changed to avoid use of llvm-gcc-4.2.

-- 
 Ned Deily,
 nad at acm.org



More information about the macports-dev mailing list