Python distutils не использует правильную версию gcc

Я пытаюсь скомпилировать пакет для Mac OSX 10.6.5. Сценарий установки пакета полагается на distutils. Проблема в том, что gcc по умолчанию для компьютера - это версия 4.2 (я определил это, просто запустив gcc --version в окне терминала), но когда я запускаю python setup.py build, я вижу из вывода, что distutils выбирает gcc -4.0 вместо 4.2. Это большая проблема, потому что код, который я использую, требует gcc> = 4.2. У меня нет прав администратора на этой машине, поэтому я создал несколько символических ссылок, которые отправляют gcc-4.0 на gcc-4.2. В результате код компилируется, но сгенерированные файлы .so не работают (когда я пытаюсь импортировать их в python, я получаю ошибки, жалующиеся на отсутствие функции инициализации в общем объекте).

Я пробовал скомпилировать этот код на другом Mac (10.6.6), и он отлично работает: distutils выбирает 4.2 без принуждения, и я могу без проблем импортировать сгенерированный общий объект. Итак, что я хотел бы сделать, так это скомпилировать код на моем компьютере, не прибегая к этой уловке с символическими ссылками ... Я просто хочу, чтобы distutils автоматически выбирал 4.2, как следует. Я попытался взять файлы .so, которые компилируются должным образом, и перенести их на мой компьютер, но это не удалось по ряду причин (они связаны с библиотеками, которых нет на моем компьютере / версия отличается от установленных).

Есть здесь какие-нибудь советы?

Спасибо, 2 автоматически как надо. Я попытался взять файлы .so, которые компилируются должным образом, и перенести их на мой компьютер, но это не удалось по ряду причин (они связаны с библиотеками, которых нет на моем компьютере / версия отличается от установленных).

Есть здесь какие-нибудь советы?

Спасибо, 2 автоматически как надо. Я попытался взять файлы .so, которые правильно компилируются, и перенести их на мой компьютер, но это не удалось по ряду причин (они связаны с библиотеками, которых нет на моем компьютере / версия отличается от установленных).

Есть здесь какие-нибудь советы?

Спасибо, Джош

6
задан Josh G. 11 May 2011 в 15:49
поделиться