Debian/Ubuntu下的boa-constructor有对python-wxgtk2.6的依赖关系,即使安装了python-wxgtk2.8,boa-constructor仍然只调用2.6版本。Felix通过以下的步骤解决了这个问题(以Ubuntu为例):
1, 首先找到boa-constructor的安装文件,默认位置在 /var/cache/apt/archives/boa-constructor_0.6.1-9ubuntu1_all.deb
使用下面的命令将文件复制到当前目录:
1 |
cp /var/cache/apt/archives/boa-constructor_0.6.1-9ubuntu1_all.deb . |
2, 建立文件夹boanew, 为解压deb文件做准备
1 |
mkdir boanew |
3, 解压boa-constructor的deb控制文件:
1 |
dpkg-deb -e ./boa-constructor_0.6.1-9ubuntu1_all.deb ./boanew/DEBIAN |
4, 解压程序文件:
1 |
dpkg-deb -x ./boa-constructor_0.6.1-9ubuntu1_all.deb ./boanew |
5, 编辑控制文件:
1 |
vim ./boanew/DEBIAN/control |
打开后找到
1 |
Depends: python (>= 2.4), python-support (>= 0.90.0), python-wxgtk2.6 |
将其修改为
1 |
Depends: python (>= 2.4), python-support (>= 0.90.0), python-wxgtk2.8 |
保存并关闭编辑窗口。
6, 修改程序文件,使其调用wx2.8
1 |
vim ./boanew/usr/share/boa-constructor/Boa.py |
打开后找到(应该在232行)
1 |
wxversion.select('2.6') |
将其修改为
1 |
wxversion.select('2.8') |
保存并关闭编辑窗口。
6, 打包新包
1 |
dpkg-deb -b boanew ./boa-constructor_0.6.1-10-wx2.8_all.deb |
7, 如果先前没有安装python-wxgtk2.8,请安装:
1 |
sudo apt-get install python-wxgtk2.8 |
8, 安装打包好的新包:
1 |
sudo dpkg -i ./boa-constructor_0.6.1-10-wx2.8_all.deb |
9, 现在可以卸载python-wxgtk2.6了
1 |
sudo apt-get purge python-wxgtk2.6 |