Неправильные параметры компилятора в python setup.py - PullRequest
2 голосов
/ 14 марта 2010

Я пытаюсь установить matplotlib в моей настройке Mac. Я считаю, что setup.py имеет неточные флаги, в частности, isysroot указывает на более ранний SDK.

Где setup.py получает информацию и как я могу это исправить?

Я нахожусь на MacOS 10.5.8, XCode 3.1.2 и Python 2.6 (конфигурация по умолчанию была 2.5)

Ответы [ 2 ]

3 голосов
/ 14 марта 2010

Полагаю, вы установили 2.6 на 10.5 с помощью установщика python.org OS X. В этом случае флаги являются точными, и вы не должны пытаться изменить их. Установщики python.org создаются с использованием так называемого 10.4u SDK и с целью развертывания 10.3, что позволяет одному образу установщика работать в системах Mac OS X с 10.3.9 до 10.6 (и, возможно, за его пределами). Самые последние выпуски Python 2.6 были исправлены, чтобы гарантировать, что сборка модуля расширения на OS X заставит параметры компилятора C соответствовать параметрам базового Python, поэтому вам нужно будет убедиться, что вы установили 10.4u SDK (или что-то еще), если необходимо из пакета Xcode (на CD / DVD-диске с выпуском OS X или загруженном с веб-сайта Apple Developer Connection). Он также убедится, что вы используете gcc-4.0, который также используется по умолчанию в 10.5.

1 голос
/ 14 марта 2010

setup.py получает информацию о вашей установке Python, в частности о пакете distutils стандартной библиотеки, из которого импортируется хотя бы некоторая функциональность.

distutils.ccompiler предоставляет абстрактный базовый класс CCompiler, описывающий ваш C-компилятор. Для gcc типичный конкретный класс находится в distutils.unixcompiler , и я думаю, что именно здесь вы должны начать проверять Mac, в частности.

Если это поможет вам увидеть, как обстоят дела в прекрасно работающей Mac OS X 10.5 со следующим, но самым новым XCode (я не могу установить самый последний, поскольку он только 10.6), я буду рад поделитесь информацией о моей установке - но я думаю, что было бы более полезно, если бы вы рассказали нам о том, какая версия Mac OS X, какая версия XCode и т. д. и т. п., вы установили! -)

Также важно знать, используете ли вы предоставленный системой Python, macports, один установленный с python.org (и какой ;-) и т. Д. - у каждого могут быть свои проблемы с установкой конечно, но они будут отличаться друг от друга! -)

...