Difference between revisions of "GPM"

From CBLFS
Jump to navigationJump to search
(Config FIles)
(Update package suffix)
 
(19 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 
{| style="text-align: left; background-color: AliceBlue;"
 
{| style="text-align: left; background-color: AliceBlue;"
|-
+
|-valign="top"
 
!Download Source:
 
!Download Source:
| ftp://arcana.linux.it/pub/gpm/gpm-1.20.1.tar.bz2
+
| http://www.nico.schottelius.org/software/gpm/archives/gpm-{{GPM-Version}}.tar.lzma
|-
+
|-valign="top"
 
!Required Patch:
 
!Required Patch:
| http://www.linuxfromscratch.org/patches/blfs/svn/gpm-1.20.1-segfault-1.patch
+
| http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-{{GPM-Version}}-silent-1.patch
|-
+
|-valign="top"
!Required Patch:
 
| http://www.linuxfromscratch.org/patches/blfs/svn/gpm-1.20.1-silent-1.patch
 
 
|}
 
|}
  
 
----
 
----
 +
 +
{{Package-Introduction|The GPM (general purpose mouse) daemon is a mouse server for applications running on the Linux console.|http://unix.schottelius.org/gpm/}}
  
 
== Dependencies ==
 
== Dependencies ==
Line 19: Line 19:
 
Compile the package:
 
Compile the package:
  
  patch -Np1 -i ../gpm-1.20.1-segfault-1.patch &&
+
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
patch -Np1 -i ../gpm-1.20.1-silent-1.patch &&
+
  CC="gcc -fPIC" ./configure --prefix=/usr --sysconfdir=/etc &&
  ./configure --prefix=/usr --sysconfdir=/etc &&
 
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
  
Line 29: Line 28:
 
  cp -v conf/gpm-root.conf /etc &&
 
  cp -v conf/gpm-root.conf /etc &&
 
  ldconfig
 
  ldconfig
 +
 +
=== Command Explanations ===
 +
 +
'''LDFLAGS="-lm"''': The math library must be linked with '''gpm''', as ceil() is used in some cursor scrolling logic.
  
 
== Multilib ==
 
== Multilib ==
Line 36: Line 39:
 
Compile the package:
 
Compile the package:
  
  patch -Np1 -i ../gpm-1.20.1-segfault-1.patch &&
+
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
patch -Np1 -i ../gpm-1.20.1-silent-1.patch &&
+
  CC="gcc ${BUILD32} -fPIC" ./configure --prefix=/usr --sysconfdir=/etc &&
  CC="gcc ${BUILD32}" ./configure --prefix=/usr --sysconfdir=/etc &&
 
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
  
Line 50: Line 52:
 
Compile the package:
 
Compile the package:
  
  patch -Np1 -i ../gpm-1.20.1-segfault-1.patch &&
+
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
patch -Np1 -i ../gpm-1.20.1-silent-1.patch &&
+
  CC="gcc ${BUILDN32} -fPIC" ./configure --prefix=/usr \
  CC="gcc ${BUILDN32}" ./configure --prefix=/usr \
 
 
     --sysconfdir=/etc --libdir=/usr/lib32 &&
 
     --sysconfdir=/etc --libdir=/usr/lib32 &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
Line 65: Line 66:
 
Compile the package:
 
Compile the package:
  
 
+
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
  patch -Np1 -i ../gpm-1.20.1-segfault-1.patch &&
+
  CC="gcc ${BUILD64} -fPIC" ./configure --prefix=/usr \
patch -Np1 -i ../gpm-1.20.1-silent-1.patch &&
 
  CC="gcc ${BUILD64}" ./configure --prefix=/usr \
 
 
     --sysconfdir=/etc --libdir=/usr/lib64 &&
 
     --sysconfdir=/etc --libdir=/usr/lib64 &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
Line 78: Line 77:
 
  ldconfig
 
  ldconfig
  
== Configuring GPM ==
+
== Configuring ==
  
 
=== BootScript ===
 
=== BootScript ===
  
Install the /etc/rc.d/init.d/gpm init script included in the [[blfs-bootscripts]] package.
+
Install the /etc/rc.d/init.d/gpm init script included in the [[bootscripts]] package.
  
 
  make install-gpm
 
  make install-gpm
Line 110: Line 109:
 
  GPMOPTS=""
 
  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.
+
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 =
 +
 
 +
{| style="text-align: left;"
 +
|-valign="top"
 +
! Installed Programs:
 +
| disable-paste, gpm, gpm-root, hltest, mev, and mouse-test
 +
|-valign="top"
 +
! Installed Libraries:
 +
| libgpm.{so.a}
 +
|-valign="top"
 +
! Installed Directories:
 +
| None
 +
|}
 +
 
 +
=== Short Descriptions ===
 +
 
 +
{| style="text-align: left;"
 +
|-valign="top"
 +
! disable-paste
 +
| is a security mechanism used to disable the paste buffer.
 +
|-valign="top"
 +
! gpm
 +
| is a cut and paste utility and mouse server for virtual consoles.
 +
|-valign="top"
 +
! gpm-root
 +
| is a default handler for '''gpm'''. It is used to draw menus on the root window.
 +
|-valign="top"
 +
! hltest
 +
| is a simple sample application using the high-level library, meant to be read by programmers trying to use the high-level library.
 +
|-valign="top"
 +
! mev
 +
| is a program to report mouse events.
 +
|-valign="top"
 +
! mouse-test
 +
| is a tool for determining the mouse type and device it's attached to.
 +
|-valign="top"
 +
! libgpm.{so.a}
 +
| contains the API functions to access the GPM daemon.
 +
|}
 +
 
 +
[[Category:General Utilities]]

Latest revision as of 12:10, 9 October 2013

Download Source: http://www.nico.schottelius.org/software/gpm/archives/gpm-1.20.6.tar.lzma
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

Non-Multilib

Compile the package:

patch -Np1 -i ../gpm-1.20.6-silent-1.patch &&
CC="gcc -fPIC" ./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-silent-1.patch &&
CC="gcc ${BUILD32} -fPIC" ./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-silent-1.patch &&
CC="gcc ${BUILDN32} -fPIC" ./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-silent-1.patch &&
CC="gcc ${BUILD64} -fPIC" ./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.