2007-04-16

Linux 字体安装外一篇

之前提到过我在Linux安装字体的方法,就是在~里建个文件夹,然后跑到/usr/share/fonts里建一个链接,最后执行三个命令,其中最后一个是fc-cache

不过今天给同学弄,一开始没弄好,fc-cache似乎不大管用(mkfontdir和mkfontscale都正常工作),然后用 -v 选项发现它根本没有扫描我在/usr/share/fonts里面建的链接。不过仔细阅读发现它会扫描~/.fonts,于是把/usr/share/fonts里新建的链接删掉,然后把~里的字体文件夹改为.fonts,再运行一次fc-cache就ok了.

想反观我的安装过程,却发现首先fc-cache就有问题。manpage是正常的,可是fc-cache不管怎么运行都是直接退出,-v选项不管用。想看版本,-V不管用,然后用fc-cache --help发现可以用--version,但是显示程序名为'true',而且/usr/bin/fc-cache是个指向/bin/true的链接。最后man一看,竟然是'true - do nothing, successfully'. 一开始认为是package没装好,用aptitude重装不管用。而且fontconfig这个package的其他命令如fc-list可以使用。最后没办法了,直接打fc-然后tab匹配,发现个fc-cache.distrib,一运行,竟然是fc-cache,估计这个是重名问题,只是不知道true是干什么用的。

这样说来当时我运行的fc-cache很可能就是这个true -- 什么都不工作,竟然还能装上字体,很神奇。

我在我的机器上运行fc-cache.distrib -v发现它确实会扫描我在/usr/share/fonts/里建的链接(也会扫描~/.fonts)。但同学的不会。后来看一下版本,我的是2.3.2,他的是2.4.2,估计跟版本有关。不过他的fc-cache没有manpage,所以具体原因就不得而知了。

总之,装好了也就行了。

No comments: