2009年10月15日星期四

自定义一个 zope3 的 Python 2.5 开发环境

自定义一个 zope3 的 Python 2.5 开发环境

----------------------------
LinFeiYu 2009,10,10

1. 创建一个自定义环境的目录::

$ sudo mkdir /opt/py25
$ sudo chown your_login_name:your_login_name /opt/py25

2. 首先需要自己编译一个 zlib 库

参照 limodou 前辈的文章 ( 编译Python 2.5.4带zlib http://www.zeuux.com/blog/content/1553/ ) ::

$ tar xzvf zlib-1.2.3.tar.gz
$ cd zlib-1.2.3
$ ./configure --prefix=/opt/py25 --shared
$ make
$ make install
$ make clean

3. 然后开始编译 Python 2.5.4

这里的 configure 是从 http://aur.archlinux.org/packages/python25 的 PKGBUILD 抄来的,呵呵 ::

$ tar xzvf Python-2.5.4.tgz
$ cd Python-2.5.4
$ ./configure --prefix=/opt/py25 --enable-shared --with-threads --enable-unicode
$ make
$ make install
$ make clean

4. 设置 Python 2.5 库

如果你的操作系统中已经存在一个二进制的 Python 2.5 的话,你可能不需要这一步了。

检查是否存在 /usr/lib/libpython2.5.so ,如果没有的话 ::

$ sudo ln -s /opt/py25/lib/libpython2.5.so.1.0 /usr/lib/libpython2.5.so

注意:这个方法可能不大好,如果你有好的方法,请告诉我。

5. 安装 setuptools

::

$ tar xzvf setuptools-0.6c9.tar.gz
$ cd setuptools-0.6c9
$ /opt/py25/bin/python setup.py install
$ /opt/py25/bin/python setup.py clean

7. 安装 zc.buildout

同上。

8. 一些可能用到的 Python 包的安装

基本思路同上。比如 PIL, ReportLab, xapian-bindings 等。

脚本语言之于开发及部署相关

脚本语言之于开发及部署相关

----------------------------
LinFeiYu 2009,10,05

脚本语言的简便和高效致使它们得到广泛的应用。在 Linux 发行版系统中使用脚本语言开发管理工具、应用程序现在已经非常流行。比如很多发行版的包管理程序都是用 Python 开发的。相信大家在 Linux 上使用 Python, Ruby 等脚本语言进行开发或者产品部署的时候,特别是 Python ,经常有一些比较烦心的版本冲突问题。一个比较好的解决方法我想就是自己重新编译一个需要的版本,比如在 /opt/py25 编译一个 Python 2.5 的版本,然后使用这个版本来进行开发和部署。这样做其实是有很多好处的。

1. 首先是这个版本是从源码编译的,虽然不能说比发行版提供的二进制包或者定制的包性能上好,但是我认为它可以更加的简洁和稳定,而且你可以自定义一些选项,做一些有用的优化!

2. 其次是与操作系统本身的版本分离,完全不受干扰。虽然像 zc.buildout, virtualenv 等优秀的虚拟环境构造程序可以非常好的完成这个工作,但是他们还是在跟系统紧密相连的那些版本关联,偶尔还是会发生一些意想不到的故障。

3. 升级和卸载方便。由于和操作系统中的版本完全分离,所以啥时候升级,升级成什么样子都随你折腾。卸载的话就更加方便了,几乎把目录一删除就可以了。操作系统中的版本升级也很少会影响我们自己编译的版本。最多是自己重新编译一次。