libtool - A generic library support script ChangeLog

HOWTO


# GNU libtool 2.4.7 (2022-03-17)
# =================
# Slackware 13.37: libtool 2.4
# Slackware 14.0, 14.1: libtool 2.4.2
# Slackware 14.2, 15.0: libtool 2.4.6

# Prerequisites:
# m4

# If the download site used below is busy, try one of these:
# http://mirrors.ibiblio.org/pub/mirrors/gnu/ftp/gnu/libtool/
# http://ftp.gnu.org/gnu/libtool/

# libtool 2.4.7 released

# Get the tarball
cd
test -f installed/libtool-2.4.7.tar.xz &&
mv installed/libtool-2.4.7.tar.xz .
test ! -f libtool-2.4.7.tar.xz &&
wget https://ftpmirror.gnu.org/libtool/libtool-2.4.7.tar.xz

# Verify tarball against base64 encoded SHA256 checksum using OpenSSL:
echo "T38hfwV85lX/IlWa0iGg/Y74StH8X8tpkM7MMzqhY10" ; \
openssl sha256 -binary libtool-2.4.7.tar.xz | openssl base64

# Verify tarball against base64 encoded SHA256 checksum using sha256sum and
# base64 from coreutils and xxd from vim
echo "T38hfwV85lX/IlWa0iGg/Y74StH8X8tpkM7MMzqhY10" ; \
sha256sum libtool-2.4.7.tar.xz | xxd -r -p | base64

# Verify tarball w/ gpg:
( gpg --list-keys 7C5FBB96BE82B954AC20DF5F6EAC957F8EEB55C0 > /dev/null 2>&1 ||
  gpg --keyserver keys.gnupg.net --recv-keys \
7C5FBB96BE82B954AC20DF5F6EAC957F8EEB55C0 ) &&
wget -nc https://ftp.gnu.org/gnu/libtool/libtool-2.4.7.tar.xz.sig &&
  gpg --verify libtool-2.4.7.tar.xz.sig && rm libtool-2.4.7.tar.xz.sig

# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "libtool-*" -exec rm -r {} \;
tar xJvf ~/libtool-2.4.7.tar.xz
cd libtool-2.4.7
test $UID -eq 0 && chown -R root:root .

# Configure the build 64-bit
test $(uname -m) = 'x86_64' &&
./configure --prefix=/usr --infodir=/usr/info --libdir=/usr/lib64 \
--mandir=/usr/man

# Configure the build 64-bit
test $(uname -m) != 'x86_64' &&
./configure --prefix=/usr --infodir=/usr/info --mandir=/usr/man

# Build it
make

# Check the build
make check

# Become root to install it
su

# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg libtool

# Slackware's aaa_elflibs package includes libltdl(s).  It's generally a
# good idea to not mess with those.  If you see libltdl.so.7.3.1 just
# make sure there is still a libltdl.so.7 pointing to that.  After you
# install the new one below, a libltdl.so symlink will point to the new one.

# Install the new version
make install
ldconfig

# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .

# Become yourself again
exit

# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/libtool-*.tar.*
mv libtool-2.4.7.tar.xz installed/


# If you ever want to uninstall libtool, this should do it:
cd
su
test -d src/libtool-* && ( cd src/libtool-* ; make uninstall )
( /usr/bin ; rm -f libtool libtoolize )
test -d /usr/include/libltdl && rm -r /usr/include/libltdl
( cd /usr/man/man1 ; rm -f libtool.1 libtoolize.1 )
( cd /usr/share/aclocal
  rm -f libtool.m4 ltargz.m4 ltdl.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 \
  lt~obsolete.m4 )
test -d /usr/share/libtool && rm -r /usr/share/libtool
rm -f /usr/include/ltdl.h /usr/info/libtool.info

# I would suggest manually checking aaa_elflibs for libltdl and
# only remove /usr/lib*/libltdl.* files that are not in that
# package.  If you ran 'make uninstall' above, this was already done.
# To list the ones to _not_ remove:
# grep libltdl /var/adm/packages/aaa_elflibs*

ldconfig
exit
find ~/src -maxdepth 1 -type d -name "libtool-*" -exec rm -r {} \;
rm -f ~/installed/libtool-*.tar.*

List of HOWTOs

Web page itself last updated: 2023-12-20 8:06pm (EDT -0400)
HOWTO last updated: 2023-12-22 5:25pm
Copyright © 2001-2024 Jason Englander. All Rights reserved.
[HTML5]