Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 23, 2008 19:57:14

XtouRusX
От:
Зарегистрирован: 2008-12-23
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Не могу нормально запустить интерпретатор.

У меня проблема следуещего рода. Запускаю питон и получаю вот такое сообщение
'import site' failed; use -v for traceback
Python 2.5.2 (r252:60911, Mar 28 2008, 14:48:58)
on linux2
Type “help”, “copyright”, “credits” or “license” for more information.

ввожу как предлагают python -v получаю кучу информации, так как лог дольшой привожу проблемную часть его

'import site' failed; traceback:
Traceback (most recent call last):
File “/usr/lib64/python2.5/site.py”, line 415, in <module>
main()
File “/usr/lib64/python2.5/site.py”, line 400, in main
paths_in_sys = addsitepackages(paths_in_sys)
File “/usr/lib64/python2.5/site.py”, line 185, in addsitepackages
sys.lib,
AttributeError: ‘module’ object has no attribute ‘lib’

Незнаю куда дальше копать. Раньше все работало, до установки boost.python, после установки тож работало потом перестало, удалил не помогло, момент когда перестало работать не уловил, поэтому причину немогу найти и что исправлять.

Система OpenSuSE 11 ставил все только из стандартной поставки,пробовал удалять пакеты с питоном и ставить заново не помагает. Может кто поможет.



Офлайн

#2 Дек. 23, 2008 22:34:12

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

Не могу нормально запустить интерпретатор.

в мене addsitepackages виглядає так:

def addsitepackages(known_paths):
"""Add site-packages (and possibly site-python) to sys.path"""
prefixes = [sys.prefix]
if sys.exec_prefix != sys.prefix:
prefixes.append(sys.exec_prefix)
for prefix in prefixes:
if prefix:
if sys.platform in ('os2emx', 'riscos'):
sitedirs = [os.path.join(prefix, "Lib", "site-packages")]
elif os.sep == '/':
sitedirs = [os.path.join(prefix,
"lib",
"python" + sys.version[:3],
"site-packages"),
os.path.join(prefix, "lib", "site-python")]
else:
sitedirs = [prefix, os.path.join(prefix, "lib", "site-packages")]
if sys.platform == 'darwin':
# for framework builds *only* we add the standard Apple
# locations. Currently only per-user, but /Library and
# /Network/Library could be added too
if 'Python.framework' in prefix:
home = os.environ.get('HOME')
if home:
sitedirs.append(
os.path.join(home,
'Library',
'Python',
sys.version[:3],
'site-packages'))
for sitedir in sitedirs:
if os.path.isdir(sitedir):
addsitedir(sitedir, known_paths)
return None
File “/usr/lib64/python2.5/site.py”, line 185, in addsitepackages
sys.lib, — в мене такого рядка нема. python-2.5.2



Офлайн

#3 Дек. 23, 2008 22:37:57

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Не могу нормально запустить интерпретатор.

Чудес не бывает. Скорее всего вы не все пакеты переставили. Посмотрите в каком пакете этот файл и переставьте его.
Я посмотрел в тарбол 2.5.2, который на python.org лежит. Там нет никаких sys.lib в строке 185, там “lib”.
Код там такой:

sitedirs = [os.path.join(prefix,
"lib",
"python" + sys.version[:3],
"site-packages"),
os.path.join(prefix, "lib", "site-python")]



Офлайн

#4 Дек. 25, 2008 19:21:35

XtouRusX
От:
Зарегистрирован: 2008-12-23
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Не могу нормально запустить интерпретатор.

Ed
Чудес не бывает. Скорее всего вы не все пакеты переставили. Посмотрите в каком пакете этот файл и переставьте его.
Я посмотрел в тарбол 2.5.2, который на python.org лежит. Там нет никаких sys.lib в строке 185, там “lib”.
Код там такой:
sitedirs = [os.path.join(prefix,
"lib",
"python" + sys.version[:3],
"site-packages"),
os.path.join(prefix, "lib", "site-python")]
Я этот файл скопировал из рпм пакета, отдельно, и пробовал все файлы из пакеты не устанавливать а просто как из архива скопировать. Изменил код на приведенный вами, проблема осталась.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version