"... не может определить тип архитектуры..." при компиляции Python C-extension с gcc

Я только что обновился от Snow Leopard до Lion, а старый c-extension python, который мне пришлось обновить, не хотел правильно компилировать. Я действительно не знаю, что делать здесь. Любой, кто мог бы помочь мне, чтобы он скомпилировался? Он скомпилирован просто отлично в Snow Leopard.

Home:folder Me$ python setup.py build
running build
running build_ext
building 'ccookies' extension
gcc -fno-strict-aliasing -fno-common -dynamic -arch ppc -arch i386 -g -O2 -DNDEBUG -g -O3 -I/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/core/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c ccookies.c -o build/temp.macosx-10.3-fat-2.7/ccookies.o
llvm-gcc-4.2: error trying to exec '/Developer/usr/bin//../llvm-gcc-4.2/bin/powerpc-apple-darwin11-llvm-gcc-4.2': execvp: No such file or directory
In file included from /usr/include/architecture/i386/math.h:630,
                 from /usr/include/math.h:28,
                 from /Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/pyport.h:312,
                 from /Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:58,
                 from ccookies.c:5:
/usr/include/AvailabilityMacros.h:109:14: warning: #warning Building for Intel with Mac OS X Deployment Target < 10.4 is invalid.
lipo: can't figure out the architecture type of: /var/folders/_t/yg4wppss5fv6dkmh89_6ykm40000gn/T//cc3Cgr3v.out
error: command 'gcc' failed with exit status 255

Ответ 1

Кажется, вы используете 32-разрядный Python 2.7, возможно, установленный на python.org. Из-за изменений в Xcode 4 (отказ от поддержки 10.4u SDK и gcc-4.0) нецелесообразно создавать модули расширения C с этим Python на 10.7 Lion. Либо используйте поставляемый Apple Python 2.7 (/usr/bin/python2.7), либо установите python.org 64-bit/32-bit installer для 2.7.2 вместо 32-разрядной версии.

Ответ 2

Я пытался установить pynauty на свою Mac OS X 10.7, и у меня возникла эта проблема. По некоторым причинам ответ Нед Дейли мне не помог. Я просто хочу предоставить еще один способ решить эту проблему, если кто-то придет на эту страницу и находится в той же ситуации, что и я. Как я решил этот пролет:

Перед запуском "python setup.py build" запустите: экспорт ARCHFLAGS = "- arch x86_64"

Ответ 3

В travis я получал эту ошибку. Я использую osx_image: osx10.11 с навсегда, но он внезапно прекратил работу с этой ошибкой за последние несколько недель. Переход на osx_image: xcode7.3 исправил ошибку для меня.