2009-05-28 3 views
2

Я пытаюсь установить cvs2svn на машине Solaris 10. На нем есть Python 2.4.4. У меня нет доступа root. Когда я скачал cvs2svn и попытался запустить его, он сказалУстановка/настройка gdbm Python для cvs2svn?

ERROR: cvs2svn uses the anydbm package, which depends on lower level dbm libraries. Your system has dbm, with which cvs2svn is known to have problems. To use cvs2svn, you must install a Python dbm library other than dumbdbm or dbm. See http://python.org/doc/current/lib/module-anydbm.html for more information.

Я скачал GDBM, компилируется и установил его в моем домашнем каталоге. Как я могу установить модуль gdbm Python, который работает с anydbm? Google не помогает ...

+0

Относящиеся к http://stackoverflow.com/questions/1190413 –

ответ

2

Я загрузил Python 2.5.1 и скомпилировал его из источника. Я убедился, что мои библиотеки gdbm находятся в соответствующих путях и используют altinstall в моем домашнем каталоге. Теперь я могу запустить cvs2svn с моей личной копией python.

0

Установите переменную окружения $PYTHONPATH, чтобы указать на место, где вы установили gdbm. Затем, когда вы запустите cvs2svn, модуль anybdm должен найти gdbm.

+0

Это не появляется на работе. Может ли это быть частью этого? ls -l /usr/lib/python2.4/lib-dynload/*db* -rwxr-xr-x 1 корень bin 12176 31 января 2007 /usr/lib/python2.4/lib-dynload/dbm. так что * –

+0

Во-первых, я думаю, что решение, на котором вы остановились, является самым пуленепробиваемым. С другой стороны, я не уверен, как правильно интерпретировать ваш комментарий. Я думаю, вы предполагаете, что dbm найден, и поэтому gdbm игнорируется. Проверьте источник для anydbm ... сначала он будет искать dbm или gdbm? Если сначала dbm, то, наверное, мой оригинальный ответ неправильный. Я думаю, что cvs2svn действительно должен включать логику, чтобы справиться с этим правильно! Требование, чтобы у вас НЕ установлено dbm, не очень приятно. –

+0

cvs2svn * does * перейти к искажениям, чтобы попытаться выбрать достойный бэкэнд базы данных для anydbm; см. http://cvs2svn.tigris.org/source/browse/cvs2svn/trunk/cvs2svn_lib/database.py?view=markup для волосатых деталей. – mhagger

0

Чтобы установить GDBM для Python, попробуйте:

pip install gdbm 

Если pip нет, установите его с помощью: easy_install pip.

На OSX, вы можете попробовать (если brew установлен):

brew install gdbm