ubuntu 7.04 font-config有个问题,在安装新字体后,fc-cache -fv会产生failed to write cache 的bug,
之后系统就变的非常慢,打开应用程序,登录等,都慢的难受。
下面有个简单的解决方法:
1)下载我提供的touchpath
2)解压缩touchpath.tar.gz,之后make 生成touchpath
3)运行下列命令,或加入脚本中运行。
sudo ./touchpath /usr/share/fonts
sudo ./touchpath /usr/share/X11/fonts
sudo ./touchpath /usr/local/share/fonts
sudo ./touchpath /var/lib/defoma/fontconfig.d
4)更新字体缓存
sudo fc-cache -fv
此时,就不再出来failed to write cache 的问题,系统运行正常。
解决安装字体后,导致系统太慢的问题。
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
- 帖子: 110
- 注册时间: 2007-03-06 22:58
解决安装字体后,导致系统太慢的问题。
- 附件
-
- touchpath.tar.gz
- touchpath
- (4.39 KiB) 已下载 350 次
- stlxv
- 论坛版主
- 帖子: 8275
- 注册时间: 2006-05-03 0:39
- 来自: المريخ
-
- 帖子: 110
- 注册时间: 2007-03-06 22:58
- stlxv
- 论坛版主
- 帖子: 8275
- 注册时间: 2006-05-03 0:39
- 来自: المريخ
- tiancaiabc
- 帖子: 98
- 注册时间: 2007-01-11 0:40
怎么我到make这步就不行了呢?
lb@ubuntu:~/Desktop/touchpath$ make
cc -c -o touchpath.o touchpath.c
touchpath.c:4:19: 错误: stdio.h:No such file or directory
touchpath.c:5:20: 错误: stdlib.h:No such file or directory
touchpath.c:6:20: 错误: unistd.h:No such file or directory
touchpath.c:7:22: 错误: sys/stat.h:No such file or directory
touchpath.c:8:20: 错误: dirent.h:No such file or directory
touchpath.c:9:20: 错误: string.h:No such file or directory
touchpath.c: 在函数 ‘usage’ 中:
touchpath.c:14: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:15: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c: 在函数 ‘touchpath’ 中:
touchpath.c:21: 错误: ‘DIR’ 未声明 (在此函数内第一次使用)
touchpath.c:21: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
touchpath.c:21: 错误: 所在的函数内只报告一次。)
touchpath.c:21: 错误: ‘dirp’ 未声明 (在此函数内第一次使用)
touchpath.c:21: 错误: ‘NULL’ 未声明 (在此函数内第一次使用)
touchpath.c:23: 错误: 变量 ‘st’ 有初始值设定但类型不完全
touchpath.c:23: 警告: 结构初始值设定项中有多余元素
touchpath.c:23: 警告: (在 ‘st’ 的初始化附近)
touchpath.c:23: 错误: ‘st’ 的存储大小未知
touchpath.c:29: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:30: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c:33: 警告: 赋值时将整数赋给指针,未作类型转换
touchpath.c:35: 警告: 隐式声明与内建函数 ‘strcpy’ 不兼容
touchpath.c:36: 警告: 隐式声明与内建函数 ‘strlen’ 不兼容
touchpath.c:37: 警告: 隐式声明与内建函数 ‘strcat’ 不兼容
touchpath.c:39: 错误: 提领指向不完全类型的指针
touchpath.c:40: 错误: 提领指向不完全类型的指针
touchpath.c:43: 错误: 提领指向不完全类型的指针
touchpath.c:47: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:48: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c:51: 错误: ‘S_IFMT’ 未声明 (在此函数内第一次使用)
touchpath.c:51: 错误: ‘S_IFDIR’ 未声明 (在此函数内第一次使用)
touchpath.c:53: 警告: 隐式声明与内建函数 ‘sprintf’ 不兼容
touchpath.c: 在函数 ‘main’ 中:
touchpath.c:69: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
make: *** [touchpath.o] 错误 1
lb@ubuntu:~/Desktop/touchpath$
-
- 帖子: 110
- 注册时间: 2007-03-06 22:58
我喜欢一劳永逸,font分类放好后,一个shell脚本搞定,呵~~很少用GUI装东西,全部用脚本:)
再说,出问题了想办法解决也是件乐事:)
根源:(fc-cache 处理失败)
失败的原因:
1)字体目录日期不对,此时,可 touch此目录
2)fc-cache处理了一个不存在的目录,比如ttf-opensymbol就干过这种事情,此时,做个已有字体目录的链接就OK
3)目录中没有字体,也会fail,拷个比较小的字体过去就OK
4)字体或目录权限不对,这点也要注意。
参考:
viewtopic.php?t=65723&highlight=