Как собрать sqlite для Python 2.4?

Я хотел бы использовать интерфейс pysqlite между базой данных Python и sdlite. У меня уже есть Python и SQLite на моем компьютере. Но у меня проблемы с установкой pysqlite. Во время установки я получаю следующее сообщение об ошибке:

ошибка: команда 'gcc' не удалась со статусом выхода 1

Насколько я понял, проблемы возникают из-за того, что версия моего Python 2.4.3, а SQLite интегрирован в Python с версии 2.5. Однако я также обнаружил, что возможно собрать sqlite для Python 2.4 (вероятно, используя некоторые приемы).

Кто-нибудь знает, как собрать sqlite для Python 2.4?

В качестве другого варианта я мог бы попробовать установить более высокую версию Python. Однако у меня нет прав root. Кто-нибудь знает, что будет самым простым способом решить проблему (собрать SQLite для Python 2.4 или установить более новую версию Python)? Я должен упомянуть, что я не хотел бы перезаписывать старую версию Python.

Заранее спасибо.


person Verrtex    schedule 21.09.2009    source источник
comment
pysqlite отлично работает с 2.4. Вставьте сообщения об ошибках, а не сообщение об ошибке.   -  person Cat Plus Plus    schedule 21.09.2009


Ответы (4)


Вы можете загрузить и установить Python в свой домашний каталог.

$ cd
$ mkdir opt
$ mkdir downloads
$ cd downloads
$ wget http://www.python.org/ftp/python/2.6.2/Python-2.6.2.tgz
$ tar xvzf Python-2.6.2.tgz
$ cd Python-2.6.2
$ ./configure --prefix=$HOME/opt/ --enable-unicode=ucs4
$ make
$ make install

Затем (если вы используете bash) в вашем .bash_profile выполните

export PATH=$HOME/opt/bin/:$PATH
export PYTHONPATH=$HOME/opt/lib:$HOME/opt/lib/site-packages:$PYTHONPATH

Затем укажите источник файла, чтобы сделать его доступным.

$ cd
$ source .bash_profile
$ python -V

где python -V вернет версию Python. Если отображается правильная версия, любые пакеты, которые вы запускаете с помощью утилиты Python setup.py (при условии, что разработчик следовал правильным соглашениям), будут установлены в каталог ~/opt/lib/python2.x/site-packages.

person Andrew Sledge    schedule 21.09.2009

Загрузите pysqlite здесь, cd в каталог, в который вы скачали, распакуйте архив:

$ tar xzf pysqlite-2.5.5.tar.gz 

затем просто сделайте (если ваши разрешения установлены правильно для этого; в противном случае может потребоваться sudo):

$ cd pysqlite-2.5.5
$ python2.4 setup.py install

в обильном выводе появляется одна ошибка:

  File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/pysqlite2/test/py25tests.py", line 48
    with self.con:
            ^
SyntaxError: invalid syntax

поскольку, как ясно показано, этот файл предназначен только для тестов py 2.5 (оператор with отсутствует в 2.4!-). Тем не менее установка прошла успешно:

$ python2.4 -c'import pysqlite2'
$

Все это есть в Mac OS X 10.5, но с использованием python2.4, установленного отдельно от системного Python 2.5.

Ошибка, о которой вы сообщаете, мало что нам говорит - может быть, вам не хватает заголовков или библиотек для самого sqlite? Можете ли вы показать нам другие выходные строки вокруг этого единственного сообщения об ошибке...?

person Alex Martelli    schedule 21.09.2009

Если у вас нет привилегий суперпользователя, я бы порекомендовал установить более новую версию Python в свой домашний каталог, а затем добавить локальную версию в ваш PATH. Кажется, проще пойти в этом направлении, чем пытаться заставить sqlite работать со старой версией Python.

Вы также сделаете себе одолжение, используя последнюю версию Python, потому что у вас будет доступ к многочисленным последним улучшениям языка.

person Christian Oudard    schedule 21.09.2009

У меня была такая же проблема с ошибкой gcc с Ubuntu Karmic. Я исправил это, установив пакет python-dev. В моем случае я работаю с python2.4, поэтому установил пакет python2.4-dev. Пакет python-dev должен работать для python2.6.

person Community    schedule 10.05.2010