如何为Python 2.4构建sqlite?

时间:2009-09-21 17:10:00

标签: python sqlite pysqlite

我想在Python和sdlite数据库之间使用pysqlite接口。我的计算机上已经有Python和SQLite了。但是我在安装pysqlite时遇到了麻烦。在安装过程中,我收到以下错误消息:

  

错误:命令'gcc'因退出状态1而失败

据我所知,问题出现是因为我的Python版本是2.4.3,而SQLite自2.5开始就集成在Python中。但是,我也发现可以为Python 2.4构建sqlite(可能使用一些技巧)。

有人知道如何为Python 2.4构建sqlite吗?

作为另一种选择,我可以尝试安装更高版本的Python。但是我没有root权限。有谁知道解决问题的最简单方法是什么(从Python 2.4构建SQLite,或安装更新版本的Python)?我不得不提一下,我不想覆盖旧版本的Python。

提前谢谢。

4 个答案:

答案 0 :(得分:1)

您可以下载并安装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 util运行的任何软件包(假设开发人员遵循正确的约定)将安装在〜/ opt / lib / python2.x / site-packages目录中。

答案 1 :(得分:1)

下载pysqlite here,cd进入您下载的目录,解压缩tarball:

$ 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上,但是使用从系统提供的Python 2.5单独安装的python2.4。

您报告的错误并没有告诉我们多少 - 也许您错过了sqlite本身的标头或库?你能告诉我们这个单一错误信息的其他输出线吗??

答案 2 :(得分:0)

如果您没有root权限,我建议您在主目录中安装更新版本的Python,然后将本地版本添加到PATH。这个方向似乎比试图让sqlite使用旧版本的Python更容易。

您也可以通过使用最新版本的Python来帮助自己,因为您可以访问该语言最近的众多改进。

答案 3 :(得分:0)

我遇到了与Uccntu Karmic失败的gcc一样的麻烦。我通过安装python-dev包修复了这个问题。就我而言,我正在使用python2.4,所以我安装了python2.4-dev软件包。 python-dev包应该适用于python2.6。