Проблема в сборке и установке Python3.2 в Mac OSX Lion - PullRequest
1 голос
/ 21 декабря 2011

Я использовал Mac OSX Lion, и я мог легко установить python3.2 с помощью установки DMG, доступной на сайте python.org. Но я хочу написать некоторые функции Python-C и создать для него двоичный файл.
Поэтому для этой цели я попытался установить python3.2 zip, доступный на сайте python.org.

Вместо этого застрял с ошибками установки, когда я использую следующие процедуры установки

. / Configure --enable-framework
сделать
sudo make install

Ошибка:

gcc -DPYTHONFRAMEWORK = '"Python"' -o pythonw ./Tools/pythonw.c -I .. -I./../Include ../Python.framework/Versions/3.2/Python
/ usr / bin / install -c -s pythonw "/Library/Frameworks/Python.framework/Versions/3.2/bin/pythonw3.2"
/ usr / bin / install -c -s pythonw "/Library/Frameworks/Python.framework/Versions/3.2/bin/python3.2"
ln -sf python3.2 "/Library/Frameworks/Python.framework/Versions/3.2/bin/python3"
ln -sf pythonw3.2 "/Library/Frameworks/Python.framework/Versions/3.2/bin/pythonw3"
cd PythonLauncher && make install DESTDIR =
gcc -fno-строго-псевдонимы -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-прототипы -o FileSettings.o -c ./FileSettings.m
В файл включен из /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:120,
from ./FileSettings.h:9,
от ./FileSettings.m:9:
/System/Library/Frameworks/Foundation.framework/Headers/NSTask.h:75: ошибка: синтаксическая ошибка перед маркером ‘^’
make [2]: *** [FileSettings.o] Ошибка 1
make [1]: *** [install_PythonLauncher] Ошибка 2
make: *** [frameworkinstallapps] Ошибка 2

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 21 декабря 2011

У меня работает. Кажется очень подозрительным, что вы видите синтаксическую ошибку в поставляемом Apple заголовочном файле OS X. Какую версию Xcode вы установили и какой компилятор C вы используете (gcc --version)? Кроме того, если вашей целью является создание модулей расширения C, обычно нет причин создавать Python из исходного кода. Пакет Distutils в стандартной библиотеке Python позаботится обо всех проблемах сборки, а все необходимые заголовочные файлы включены в двоичные установщики python.org для Mac OS X.

ОБНОВЛЕНИЕ: в своем новом комментарии вы указываете, что хотите запускать Python как 32-битный. 64- / 32-битные установщики python.org для OS X являются мульти-архитектурными (или universal); каждый исполняемый файл содержит исполняемые файлы как для arch x86_64 (64-разрядная версия), так и для arch i386 (32-разрядная версия). Mac OS X 10.6 и 10.7 предпочитают запускать 64-битные исполняемые файлы, где это возможно. Чтобы запустить 64-битные / 32-битные Pythons в 32-битном режиме, попробуйте:

arch -i386 python3.2

Например:

python3.2 -c "import sys;print(sys.maxsize)"
9223372036854775807
arch -x86_64 python3.2 -c "import sys;print(sys.maxsize)"
9223372036854775807
arch -i386 python3.2 -c "import sys;print(sys.maxsize)"
2147483647
...