Difference between revisions of "GPM"

From CBLFS
Jump to navigationJump to search
(Update package suffix)
 
(13 intermediate revisions by 7 users not shown)
Line 2: Line 2:
 
|-valign="top"
 
|-valign="top"
 
!Download Source:
 
!Download Source:
| ftp://arcana.linux.it/pub/gpm/gpm-{{GPM-Version}}.tar.bz2
+
| http://www.nico.schottelius.org/software/gpm/archives/gpm-{{GPM-Version}}.tar.lzma
 
|-valign="top"
 
|-valign="top"
 
!Required Patch:
 
!Required Patch:
| http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-{{GPM-Version}}-segfault-1.patch
+
| http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-{{GPM-Version}}-silent-1.patch
 
|-valign="top"
 
|-valign="top"
!Required Patch:
 
| http://svn.cross-lfs.org/svn/repos/patches/gpm/gpm-{{GPM-Version}}-silent-1.patch
 
 
|}
 
|}
  
 
----
 
----
  
== Introduction to GPM ==
+
{{Package-Introduction|The GPM (general purpose mouse) daemon is a mouse server for applications running on the Linux console.|http://unix.schottelius.org/gpm/}}
 
 
The GPM (General Purpose Mouse daemon) package contains a mouse server for the console and xterm. It not only provides cut and paste support generally, but its library component is used by various software such as Links to provide mouse support to the application. It is useful on desktops, especially if following (Beyond) Linux From Scratch instructions; it's often much easier (and less error prone) to cut and paste between two console windows than to type everything by hand!
 
  
 
== Dependencies ==
 
== Dependencies ==
Line 23: Line 19:
 
Compile the package:
 
Compile the package:
  
patch -Np1 -i ../gpm-{{GPM-Version}}-segfault-1.patch &&
 
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
  ./configure --prefix=/usr --sysconfdir=/etc &&
+
  CC="gcc -fPIC" ./configure --prefix=/usr --sysconfdir=/etc &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
  
Line 44: Line 39:
 
Compile the package:
 
Compile the package:
  
patch -Np1 -i ../gpm-{{GPM-Version}}-segfault-1.patch &&
 
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
  CC="gcc ${BUILD32}" ./configure --prefix=/usr --sysconfdir=/etc &&
+
  CC="gcc ${BUILD32} -fPIC" ./configure --prefix=/usr --sysconfdir=/etc &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
  
Line 58: Line 52:
 
Compile the package:
 
Compile the package:
  
patch -Np1 -i ../gpm-{{GPM-Version}}-segfault-1.patch &&
 
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
  CC="gcc ${BUILDN32}" ./configure --prefix=/usr \
+
  CC="gcc ${BUILDN32} -fPIC" ./configure --prefix=/usr \
 
     --sysconfdir=/etc --libdir=/usr/lib32 &&
 
     --sysconfdir=/etc --libdir=/usr/lib32 &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
Line 73: Line 66:
 
Compile the package:
 
Compile the package:
  
 
patch -Np1 -i ../gpm-{{GPM-Version}}-segfault-1.patch &&
 
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
 
  patch -Np1 -i ../gpm-{{GPM-Version}}-silent-1.patch &&
  CC="gcc ${BUILD64}" ./configure --prefix=/usr \
+
  CC="gcc ${BUILD64} -fPIC" ./configure --prefix=/usr \
 
     --sysconfdir=/etc --libdir=/usr/lib64 &&
 
     --sysconfdir=/etc --libdir=/usr/lib64 &&
 
  LDFLAGS="-lm" make
 
  LDFLAGS="-lm" make
Line 90: Line 81:
 
=== 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 159: Line 150:
 
| contains the API functions to access the GPM daemon.
 
| contains the API functions to access the GPM daemon.
 
|}
 
|}
 +
 +
[[Category:General Utilities]]

Latest revision as of 11: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.
Retrieved from "?title=GPM&oldid=21570"