Найти - Пользователи
Полная версия: Установка интерпретатора Python
Начало » Python для новичков » Установка интерпретатора Python
1 2
Sca
Доброго времени суток!

Пытаюсь установить Python.
Система Mandriva Linux Free 2010.
Однако команда make завершается с ошибкой:
[root@websrv_it Python-2.3.5]# make
gcc -pthread -c -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -I./Include -DPy_BUILD_CORE -o Modules/config.o Modules/config.c
gcc -pthread -c -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -I./Include -DPy_BUILD_CORE -DPYTHONPATH='":plat-linux2:lib-tk"' \
-DPREFIX='"/usr/local"' \
-DEXEC_PREFIX='"/usr/local"' \
-DVERSION='"2.3"' \
-DVPATH='""' \
-o Modules/getpath.o ./Modules/getpath.c
if test -f buildno; then \
expr `cat buildno` + 1 >buildno1; \
mv -f buildno1 buildno; \
else echo 1 >buildno; fi
gcc -pthread -c -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -I./Include -DPy_BUILD_CORE -DBUILD=`cat buildno` -o Modules/getbuildinfo.o ./Modules/getbuildinfo.c
rm -f libpython2.3.a
ar cr libpython2.3.a Modules/getbuildinfo.o
ar cr libpython2.3.a Parser/acceler.o Parser/grammar1.o Parser/listnode.o Parser/node.o Parser/parser.o Parser/parsetok.o Parser/bitset.o Parser/metagrammar.o Parser/firstsets.o Parser/grammar.o Parser/pgen.o Parser/myreadline.o Parser/tokenizer.o
ar cr libpython2.3.a Objects/abstract.o Objects/boolobject.o Objects/bufferobject.o Objects/cellobject.o Objects/classobject.o Objects/cobject.o Objects/complexobject.o Objects/descrobject.o Objects/enumobject.o Objects/fileobject.o Objects/floatobject.o Objects/frameobject.o Objects/funcobject.o Objects/intobject.o Objects/iterobject.o Objects/listobject.o Objects/longobject.o Objects/dictobject.o Objects/methodobject.o Objects/moduleobject.o Objects/object.o Objects/obmalloc.o Objects/rangeobject.o Objects/sliceobject.o Objects/stringobject.o Objects/structseq.o Objects/tupleobject.o Objects/typeobject.o Objects/weakrefobject.o Objects/unicodeobject.o Objects/unicodectype.o
ar cr libpython2.3.a Python/bltinmodule.o Python/exceptions.o Python/ceval.o Python/compile.o Python/codecs.o Python/errors.o Python/frozen.o Python/frozenmain.o Python/future.o Python/getargs.o Python/getcompiler.o Python/getcopyright.o Python/getmtime.o Python/getplatform.o Python/getversion.o Python/graminit.o Python/import.o Python/importdl.o Python/marshal.o Python/modsupport.o Python/mystrtoul.o Python/mysnprintf.o Python/pyfpe.o Python/pystate.o Python/pythonrun.o Python/structmember.o Python/symtable.o Python/sysmodule.o Python/traceback.o Python/getopt.o Python/dynload_shlib.o Python/thread.o
ar cr libpython2.3.a Modules/config.o Modules/getpath.o Modules/main.o Modules/gcmodule.o
ar cr libpython2.3.a Modules/threadmodule.o Modules/signalmodule.o Modules/posixmodule.o Modules/errnomodule.o Modules/_sre.o Modules/_codecsmodule.o Modules/zipimport.o Modules/symtablemodule.o Modules/xxsubtype.o
ranlib libpython2.3.a
c++ -pthread -Xlinker -export-dynamic -o python \
Modules/python.o \
libpython2.3.a -lpthread -ldl -lutil -lm
/usr/bin/ld: cannot open output file python: Is a directory
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [python] Ошибка 1
Может кто сталкивался с таким?? Что предпринять для устранения ошибки?
Заранее спасибо.
Alex2ndr
Вы про пакетные менеджеры слышали? Зачем из исходников то ставите? Думаю что в Мандриве есть python.
Sca
Alex2ndr
Вы про пакетные менеджеры слышали? Зачем из исходников то ставите? Думаю что в Мандриве есть python.
Конечно в Mandriva есть python, но версии 2.6. Мне же нужна именно версия 2.3. Вот и собираю из исходников.

И к тому же с сервером, куда нужно поставить python, работаю удалённо без графического интерфейса.
Андрей Светлов
Вы что-то напутали. Попробуйте для начала с чистого места
./configure
make
./python
Sca
Андрей Светлов
./configure
make
./python
После этих 3-х команд результат такой:
bash: ./python: is a directory
ta
> После этих 3-х команд результат такой

скомпилировалось?
ну тогда пройдись по папочкам в этой дирректории в поисках бинарника.
ну или make install (и потом просто - python), но тогда лучше при конфигурации указывать, чтобы оно устанавливалось в /usr/local/, чтобы не было нестыковок с пакетно-установленным питоном
Андрей Светлов
Вот ведь!!! Не ожидал такого… На моей Убунте не захотел заводиться с параметрами по умолчанию. Пришлось принудительно включить pymalloc - начиная с 2.4 он уже включенным идет, если ничего не путаю. И pydebug - что уже не в какие ворота не лезет.

wget http://www.python.org/ftp/python/2.3.7/Python-2.3.7.tgz
tar -zxf Python-2.3.7.tgz
cd Python-2.3.7/
./configure –with-pymalloc –with-pydebug
make
make test

Все прошло почти хорошо, но test_zipimport отвалился. Дальше ковырять не стал - антиквариатом не сильно интересуюсь. И где слетели макросы, которые в pydebug разворачиваются в полноценные функции - сейчас не интересно. Видно, python 2.3 не тестировался со свежими glibc.

На какой файловой системе вы все пытаетесь делать?
В питоне есть папка ./Python - там исходники интерпретатора.
И есть ./python - сам интерпретатор, запускаемый файл.
Если вы пытаетесь делать все на case-insensitive filesystem (не знаю откуда ее взяли, может samba или какая другая шара) - то, естественно, ничего не получается.

Да, когда все заработает - не торопитесь делать make install.
Сначала стоит посмотреть на –prefix в ./configure и подумать, что же там должно стоять. По умолчанию, насколько помню, /usr/local
Андрей Светлов
Не обращайте внимания на мои трудности при сборке.
Python 2.3 никогда не знал, что существуют 64 битные операционные системы. И уже не узнает.
Поэтому простого ./configure должно хватить
PooH
Андрей, а wxPython вы на убунте не собирали? Не расскажите процесс? Я пытался 2.9 собрать, но там видно сильное колдунство нужно.
Sca
ta
скомпилировалось?
Python2.3.5 так и не скомпилировался без ошибок.

Андрей Светлов
На какой файловой системе вы все пытаетесь делать?
[root@websrv_it ~]# blkid
/dev/sda1: UUID="d730b819-06ee-4759-8173-0654bbe8abd9" TYPE="reiserfs"
/dev/sda5: UUID="ae599535-edb7-4988-9efa-83f693c583a6" TYPE="swap"
/dev/sda6: UUID="828c142d-bd98-4272-ab42-3492fa21de86" TYPE="reiserfs"
Вообщем в итоге поставила-таки Python2.3.7, особых проблем не возникло, хотя make test показал, что кой-чего поотваливалось. По умолчанию поставилось в /usr/local.

Спасибо всем большое за помощь и советы!!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB