Sunday, February 3, 2013

Install New Python on CentOS Linux

安裝較新版本 Python 於 CentOS 5 Linux,最方便的方法是安裝 Extra Packages for Enterprise Linux (EPEL) 的 python26 套件。

1. 查看 CentOS 5 系統安裝的 Python 版本(位於 /usr/bin/python)。
$ python -V
Python 2.4.3

2. 增加 RHEL EPEL repository 至系統,參考 Installing RHEL EPEL Repo on Centos 5.x or 6.x

3. 安裝 EPEL 的 python26 套件。
$ sudo yum install python26

除了安裝 python26,因為 Dependency 關係,也會安裝另外兩個套件,共安裝以下三個套件(使用 64 位元主機)。
python26: python26-2.6.8-2.el5.x86_64.rpm (來自 epel repository)
python26-libs: python26-libs-2.6.8-2.el5.x86_64.rpm  (來自 epel repository)
libffi: libffi-3.0.9-1.el5.rf.x86_64.rpm (來自 rpmforge repository)

4. 查看安裝後的 Python 版本(位於 /usr/bin/python26)。
$ python26 -V
Python 2.6.8

Saturday, February 2, 2013

Fix Transaction Check Error for fox on CentOS Linux

修正於 CentOS 安裝 fox 套件時,發生 Transaction Check Error 錯誤。

fox 套件資訊
fox.x86_64 : Toolkit for GUI development
fox-devel.x86_64 : Header files, libraries and development documentation for fox.

安裝 fox 套件。
$ sudo yum install fox-devel
安裝 fox-1.6.33-1.el5.rf.x86_64 時,出現以下錯誤:

Transaction Check Error:
  file /usr/lib64/libCHART-1.6.so.0 from install of fox-1.6.33-1.el5.rf.x86_64 conflicts with file from package libfox1_6-1.6.44-28.1.x86_64
  file /usr/lib64/libFOX-1.6.so.0 from install of fox-1.6.33-1.el5.rf.x86_64 conflicts with file from package libfox1_6-1.6.44-28.1.x86_64

查看已安裝的 fox 相關套件。
$ yum list installed | grep fox
fox16.x86_64                              1.6.44-28.1                  installed
libfox1_6.x86_64                          1.6.44-28.1                  installed

移除發生衝突的 libfox1 套件
$ sudo yum remove libfox1_6.x86_64

上述指令將同時移除 libfox1_6.x86_64 和 fox16.x86_64。

重新安裝 fox 套件。
$ sudo yum install fox-devel

成功安裝 fox.x86_64 (1.6.33-1.el5.rf) 和 fox-devel.x86_64 (1.6.33-1.el5.rf)。

查看安裝後的系統。
$ yum list installed | grep fox
fox.x86_64                                1.6.33-1.el5.rf              installed
fox-devel.x86_64                          1.6.33-1.el5.rf              installed