Linux下安装配置文件
lmplayer v0.5.0中使用了配置文件,用来记录用户的设置。如果没有这个配置文件,在软件运行时从配置文件加载参数,如果没有找到配置文件,就可能会出问题,因此在软件第一次运行时就要配置好。
一种方法是在软件内部做,检查配置目录,通常为$(HOME)/.lmplayer,如果没有就创建,然后检查配置文件,如果没有就从生成一个默认的。
另一种方法是在软件安装时就把这些默认的配置文件就准备好,那么就要在安装脚本上做文章。
lmplayer用了后一种方法,阅读了automake文档,发现有这样一个机制,可以让用户自定义安装目标,这就是-local。实事上,很多有用的目标都有-local版本,如all, info, install-data, install-exec等,具体可参考automake手册的Extending Automake Rules节。
lmplayer使用了install-exec-install这个目标。在data/Makefile.am中书写如下:
install-exec-hook:
mkdir -p $(HOME)/.lmplayer
chmod 777 $(HOME)/.lmplayer
cp $(datadir)/lmplayer/glade/lmplayer.cfg.example $(HOME)/.lmplayer/lmplayer.cfg
chmod 777 $(HOME)/.lmplayer/lmplayer.cfg
这样就工作得很好。但是还有另外一个问题,那就是安装后如用户把.lmplayer删除了,软件运行就会出问题,所以实际上还是要在软件内部做一些检查和补救的工作。
