Difference between revisions of "GPM"

From CBLFS
Jump to navigationJump to search
(BootScript)
m
Line 16: Line 16:
  
 
== Dependencies ==
 
== Dependencies ==
 
+
{{Note|Any reference to ''OPEN_MAX'' in the sources of the latest release and snapshots should be changed to ''_SC_OPEN_MAX''.
 +
The files ''src/special.c'' and ''prog/gpm-root.y'' are of concern.}}
 
== Non-Multilib ==
 
== Non-Multilib ==
  

Revision as of 09:58, 1 July 2008

Download Source: http://ftp.schottelius.org/pub/linux/gpm/gpm-1.20.6.tar.bz2
Required Patch: http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-1.20.6-segfault-1.patch
Required Patch: http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-1.20.6-silent-1.patch

Introduction to GPM

The GPM (general purpose mouse) daemon is a mouse server for applications running on the Linux console.

Project Homepage: http://unix.schottelius.org/gpm/

Dependencies

Caution.png

Note

Any reference to OPEN_MAX in the sources of the latest release and snapshots should be changed to _SC_OPEN_MAX. The files src/special.c and prog/gpm-root.y are of concern.

Non-Multilib

Compile the package:

patch -Np1 -i ../gpm-1.20.6-segfault-1.patch &&
patch -Np1 -i ../gpm-1.20.6-silent-1.patch &&
./configure --prefix=/usr --sysconfdir=/etc &&
LDFLAGS="-lm" make

Install the package

make install &&
cp -v conf/gpm-root.conf /etc &&
ldconfig

Command Explanations

LDFLAGS="-lm": The math library must be linked with gpm, as ceil() is used in some cursor scrolling logic.

Multilib

32Bit

Compile the package:

patch -Np1 -i ../gpm-1.20.6-segfault-1.patch &&
patch -Np1 -i ../gpm-1.20.6-silent-1.patch &&
CC="gcc ${BUILD32}" ./configure --prefix=/usr --sysconfdir=/etc &&
LDFLAGS="-lm" make

Install the package

make install &&
ldconfig

N32

Compile the package:

patch -Np1 -i ../gpm-1.20.6-segfault-1.patch &&
patch -Np1 -i ../gpm-1.20.6-silent-1.patch &&
CC="gcc ${BUILDN32}" ./configure --prefix=/usr \
    --sysconfdir=/etc --libdir=/usr/lib32 &&
LDFLAGS="-lm" make

Install the package

make install &&
ldconfig

64Bit

Compile the package:


patch -Np1 -i ../gpm-1.20.6-segfault-1.patch &&
patch -Np1 -i ../gpm-1.20.6-silent-1.patch &&
CC="gcc ${BUILD64}" ./configure --prefix=/usr \
    --sysconfdir=/etc --libdir=/usr/lib64 &&
LDFLAGS="-lm" make

Install the package

make install &&
cp -v conf/gpm-root.conf /etc &&
ldconfig

Configuring

BootScript

Install the /etc/rc.d/init.d/gpm init script included in the bootscripts package.

make install-gpm

Config FIles

/etc/gpm-root.conf and ~/.gpm-root: The default and individual user gpm-root configuration files.

/etc/sysconfig/mouse: This file contains the name of your mouse device and the protocol which it uses. To create this file, run the following as the root user:

cat > /etc/sysconfig/mouse << "EOF"
# Begin /etc/sysconfig/mouse

MDEVICE="<yourdevice>"
PROTOCOL="<yourprotocol>"
GPMOPTS="<additional options>"

# End /etc/sysconfig/mouse
EOF

Configuration Information

Examples of values to set MDEVICE, PROTOCOL, and GPMOPTS to are:

MDEVICE="/dev/psaux"
PROTOCOL="imps2"
GPMOPTS=""

A list of which protocol values are known can be found by running gpm -m [device] -t -help. The MDEVICE setting depends on which type of mouse you have. For example, /dev/ttyS0 for a serial mouse (on Windows this is COM1), /dev/input/mice is often used for USB mice and /dev/psaux for PS2 mice. GPMOPTS is the 'catch all' for any additional options that are needed for your hardware.

Contents

Installed Programs: disable-paste, gpm, gpm-root, hltest, mev, and mouse-test
Installed Libraries: libgpm.{so.a}
Installed Directories: None

Short Descriptions

disable-paste is a security mechanism used to disable the paste buffer.
gpm is a cut and paste utility and mouse server for virtual consoles.
gpm-root is a default handler for gpm. It is used to draw menus on the root window.
hltest is a simple sample application using the high-level library, meant to be read by programmers trying to use the high-level library.
mev is a program to report mouse events.
mouse-test is a tool for determining the mouse type and device it's attached to.
libgpm.{so.a} contains the API functions to access the GPM daemon.
Retrieved from "?title=GPM&oldid=14545"