# I no longer include version 1.x here. 1.08, for example, was released
# way back in 2002.
#
# If you still have 1.x installed, you can safely install both at the same
# time. The 1.x includes go into /usr/local/include and the library is
# named liblzo.*, the 2.x includes go into /usr/local/include/lzo and the
# library is named liblzo2.*
# Older versions of this HOWTO used prefix /usr/local, but we now use
# /usr to match the path of Slackware packages
#
# Remove an old version of lzo by running 'make uninstall' as root from
# a configured source directory
# If you want to uninstall lzo, or clean up files from an old version
# before installing a new one, skip down to the bottom for instructions
# Prerequisites (for both versions):
# gawk
# sed
# nasm
# zlib
# Get the tarball
cd
test -f installed/lzo-2.10.tar.gz && mv installed/lzo-2.10.tar.gz .
test ! -f lzo-2.10.tar.gz &&
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type f -name "lzo-2.*" -exec rm -r {} \;
tar xzvf ~/lzo-2.10.tar.gz
cd lzo-2.10
test $UID = 0 && chown -R root:root .
# At least read README and INSTALL
# If upgrading, also read NEWS
# If you do not want static library, use --enable-static=no
# Configure the build for 64-bit
test $(uname -m) = 'x86_64' &&
./configure --enable-shared --prefix=/usr --libdir=/usr/lib64
# Configure the build for anything else
test $(uname -m) = 'x86_64' &&
./configure --enable-shared --prefix=/usr
# Build it
make
# Check the build
make check
# Run a full test
make test
# Become root to install it
su
# Remove the Slackware package, if there is one
# [ You may want to keep a copy of the real (non-symlink) shared library
# file just in case ]
test -x /sbin/removepkg && /sbin/removepkg lzo
# Install it
make install
ldconfig
# Become yourself again
exit
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/lzo-2.*.tar.*
mv lzo-2.10.tar.gz installed/
# If you ever want to uninstall lzo 1.x or 2.x, this should do it:
# (as always - be careful here or you could use other things that start
# with lzo like lzop)
cd
su
test -d src/lzo-1.* && ( cd src/lzo-1.* ; make uninstall )
test -d src/lzo-2.* && ( cd src/lzo-2.* ; make uninstall )
for pfx in /usr /usr/local; do
( cd ${pfx}/include
rm -f lzoconf.h lzoutil.h lzo16bit.h lzo1.h \
lzo1a.h lzo1b.h lzo1c.h lzo1f.h lzo1x.h lzo1y.h lzo1z.h lzo2a.h )
test -d ${pfx}/include/lzo && rm -r ${pfx}/include/lzo
( cd ${pfx}/lib ; rm -f liblzo.* liblzo2.* )
test -d ${pfx}/lib64 &&
( cd ${pfx}/lib64 ; rm -f liblzo.* liblzo2.* )
done
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "lzo-1.*" -exec rm -r {} \;
find ~/src -maxdepth 1 -type d -name "lzo-2.*" -exec rm -r {} \;
rm -f ~/installed/lzo-1.*.tar.*
rm -f ~/installed/lzo-2.*.tar.*