博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ubuntu12.04 software-center 的一个BUG
阅读量:6261 次
发布时间:2019-06-22

本文共 1062 字,大约阅读时间需要 3 分钟。

hot3.png

  ubuntu software-center 软件中心今天突然发现打不开了,就是在启动的过程中启动一半就退出了,多次启动无果。首先想到的办法当然是最彻底的两句话

  sudo apt-get purge software-center

  sudo apt-get install software-center

结果未果,启动起来还是首先一个窗体初始化

  

  接着。。就直接关闭了。然后查看它的输出信息,发现原来是py输出中文导致的,因为我们窗体上有很多中文字体的组件需要加载,而python处理的时候有一个使用ascii编码格式化字符串的操作,所以就这一语言差异导致这个bug的产生。

 产生所在地址/usr/share/software-center/softwarecenter/db/categories.py第269行的debug print

# debug print	for cat in categories:		    		LOG.debug("%s %s %s" % (cat.name, cat.iconname,cat.query))

为了解决这个问题,可以将值为中文的字符串 cat.name给格式成utf-8,我这里就直接将LOG.debug注释掉了

# debug print	try:		for cat in categories:			pass		    			#LOG.debug("%s %s %s" % (cat.name, cat.iconname, cat.query))	except Exception as error:		print error		exit(0)	    

然后保存脚本,启动software-center 正常启动。

  

  PS:本来标题叫做ubuntu software-center的bug,可是当我手贱地打开另外一台装有ubuntu14.04的机器的时候,赫然发现它的debug print是这样写的

# debug print        for cat in categories:            LOG.debug("%s %s %s" % (cat.name.decode('utf8'),cat.iconname,cat.query))

 看来这个bug已经有人报道了,不过现在用12.04以及以前版本的人也是大有人在,希望能帮助遇到相同问题的朋友。

转载于:https://my.oschina.net/000quanwei/blog/294663

你可能感兴趣的文章
Linux常见命令(四)——mkdir
查看>>
正则表达式基础知识
查看>>
Web下的HTTPS应用
查看>>
perl数组的长度与元素个数
查看>>
Netty线程模型
查看>>
『Kaggle』Sklearn中几种分类器的调用&词袋建立
查看>>
017_nginx重定向需求
查看>>
[UWP]涨姿势UWP源码——RSS feed的获取和解析
查看>>
判断一个变量是否为空的方法
查看>>
linux 学习一:安装jdk和tomcat
查看>>
[js高手之路]html5 canvas动画教程 - 边界判断与反弹
查看>>
Lua--------------------unity3D与Slua融合使用
查看>>
IP视频通信中的"丢包恢复技术”(LPR)
查看>>
java序列化/反序列化之xstream、protobuf、protostuff 的比较与使用例子
查看>>
xcode编译报错unknown error -1=ffffffffffffffff Command /bin/sh failed with exit code 1
查看>>
linux定时任务crontab设置
查看>>
$.ajax返回的JSON格式的数据后无法执行success的解决方法
查看>>
Android 多媒体MediaPlayer使用详解
查看>>
Golang源码探索(三) GC的实现原理
查看>>
魔方NewLife.Cube升级v2.0
查看>>