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

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

0 голосов
/ 21 сентября 2009

Я хотел бы использовать интерфейс 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.

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

Ответы [ 4 ]

1 голос
/ 21 сентября 2009

Вы можете скачать и установить 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.

1 голос
/ 21 сентября 2009

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

$ 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? Можете ли вы показать нам другие выходные строки вокруг этой единственной ошибки msg ...?

0 голосов
/ 10 мая 2010

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

0 голосов
/ 21 сентября 2009

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

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

...