分类: LINUX
2006-05-25 14:33:34
Gpm ( 通用鼠标守护进程 ) 是为控制台下运行的程序提供鼠标支持的服务器。它不仅提供了通用的剪切和粘贴支持,它的库文件还被许多程序( 如 links ) 用来在程序里实现鼠标。它对桌面电脑很有用,尤其是使用 (B)LFS 的安装指导时 - 在两个控制台之间拷贝和粘贴总比手动输入容易些( 也能减少错误 )。
下载地址 (HTTP): 下载地址 (FTP): 使用版本: 1.20.1 包的大小: 556 KB 估计所需硬盘空间: 3.2 MB |
gpm 软件包包含一个用于控制台(console)和xterm的鼠标服务器. 它是用于在控制台中剪切和粘贴文本, 并且很多在控制台基础上的程序需要用它来在程序内部实现鼠标的支持。
用以下命令安装 gpm:
注: The LDFLAGS environment variable must be set before configuring gpm.
LDFLAGS="-lm" ./configure --prefix=/usr && make && make install |
LDFLAGS="-lm": 要把math库连接到gpm是因为ceil()在一些鼠标滚动算法里要用到。只有你要优化gpm的大小时才需要设置LDFLAGS。
gpm init.d可以用以下命令生成: (假设你按照LFS 默认的把$rc_base 设为 /etc/rc.d)
cat > /etc/rc.d/init.d/gpm << "EOF" #!/bin/sh # Begin $rc_base/init.d/gpm # Based on sysklogd script from LFS-3.1 and earlier. # Rewritten by Gerard Beekmans - gerard@linuxfromscratch.org # GPM specific parts by Mark Hymers - markh@linuxfromscratch.org source /etc/sysconfig/rc source $rc_functions if [ -f /etc/sysconfig/mouse ] then source /etc/sysconfig/mouse fi if [ -z "$MDEVICE" ] || [ -z "$PROTOCOL" ] then echo "Please create an /etc/sysconfig/mouse file containing" echo "MDEVICE and PROTOCOL values" exit 1; fi case "$1" in start) echo "Starting gpm..." loadproc gpm -m $MDEVICE -t $PROTOCOL ;; stop) echo "Stopping gpm..." killproc gpm ;; restart) $0 stop sleep 1 $0 start ;; status) statusproc gpm ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 1 ;; esac # End $rc_base/init.d/gpm EOF chmod 755 /etc/rc.d/init.d/gpm |
你还需要为这个文件在相关的rc.d目录下建立一些符号链接.例子如下:
cd /etc/rc.d/init.d && ln -sf ../init.d/gpm ../rc0.d/K10gpm && ln -sf ../init.d/gpm ../rc1.d/K10gpm && ln -sf ../init.d/gpm ../rc2.d/K10gpm && ln -sf ../init.d/gpm ../rc3.d/S70gpm && ln -sf ../init.d/gpm ../rc4.d/S70gpm && ln -sf ../init.d/gpm ../rc5.d/S70gpm && ln -sf ../init.d/gpm ../rc6.d/K10gpm |
/etc/sysconfig/mouse 这个文件包括你的鼠标设备名字和它用的协议.用以下命令创建这个文件:
cat > /etc/sysconfig/mouse << "EOF" # start /etc/sysconfig/mouse MDEVICE=yourdevice PROTOCOL=yourprotocol # end /etc/sysconfig/mouse EOF |
举个MDEVICE 和 PROTOCOL的例子如下
MDEVICE=/dev/psaux PROTOCOL=imps2 |
关于协议(protocol)值表可以运行这个得到 gpm -t -help. 你的MDEVICE 设置取决于你用什么样的鼠标.例如: /dev/ttyS0 是用于串口鼠标(在Window里是COM1), /dev/input/mice 一般用于USB的鼠标而/dev/psaux不是 用于 PS2 鼠标.一般来说,我们连接/dev/mouse到相关设备而不是直接访问该相关设备.
gpm 软件包包含 gpm, gpm-root, disable-paste 和 mev.
gpm 是用于虚拟控制台的剪切,粘贴工具和鼠标服务器.
gpm-root 默认的gpm处理器. 用于在根目录窗口拉出菜单.
暂时没有介绍.
mev 是报告鼠标事件的程序.