Linux HOWTOs

About | Home | Search


HOWTO: fltk
Description: FLTK = Fast Light Toolkit (pronounced "fulltick")
Click here for ChangeLog
NOTE: I use GNU tar >= 1.13.25 so it's -j for .tar.bz2 files,
it's safe to assume that make, gcc, binutils, fileutils/coreutils, gawk, sed, and grep are prerequisites for almost everything


# FLTK
# ====
# Below are the latest 1.x and 2.x versions.  They can both be installed at
# the same time because everything in 2.x that had fltk in the name is
# named fltk2.
#
# 2.0 hasn't been released yet, so be aware that the 2.x version below is a
# snapshot.

# Prerequisites (either version):
# groff
# HTMLDOC (optional)
# grep
# libjpeg
# zlib
# libpng
# XFree86 or X.org
# OpenGL (which is included with X, or Mesa)


# FLTK 1.1.7
# ==========
cd
test -f installed/fltk-1.1.7-source.tar.bz2 &&
 mv installed/fltk-1.1.7-source.tar.bz2 .
test ! -f fltk-1.1.7-source.tar.bz2 &&
 wget ftp://ftp2.easysw.com/pub/fltk/1.1.7/fltk-1.1.7-source.tar.bz2

# Verify tarball w/ md5sum:
echo "2e29319119adc9d63b2f26b72cae0a88  fltk-1.1.7-source.tar.bz2" | \
 md5sum -c

mkdir -p -m 0700 src
cd src
find -maxdepth 1 -type d -name "fltk-1.*" -exec rm -r {} \;
tar xjvf ~/fltk-1.1.7-source.tar.bz2
cd fltk-1.1.7
test $UID = 0 && chown -R root:root .
./configure --enable-shared
make

# Install it as root
su -c "make install ; ldconfig"

cd
mkdir -p -m 0700 installed
rm -f installed/fltk-1.*.tar.*
mv fltk-1.1.7-source.tar.bz2 installed/


# FLTK 2 snapshot
# ===============
cd
test -f installed/fltk-2.0.x-r5274.tar.bz2 &&
 mv installed/fltk-2.0.x-r5274.tar.bz2 .
test ! -f fltk-2.0.x-r5274.tar.bz2 &&
 wget ftp://ftp3.easysw.com/pub/fltk/snapshots/fltk-2.0.x-r5274.tar.bz2

# Verify tarball w/ md5sum:
echo "a1ad2f29212d1a1d62e078ea2628212b  fltk-2.0.x-r5274.tar.bz2" | \
 md5sum -c

mkdir -p -m 0700 src
cd src
find -maxdepth 1 -type d -name "fltk-2.*" -exec rm -r {} \;
tar xjvf ~/fltk-2.0.x-r5274.tar.bz2
cd fltk-2.0.x-r5274
test $UID = 0 && chown -R root:root .

# Apply this patch to fix a Makefile (glut/Makefile) bug:
wget -nc http://www.fltk.org/strfiles/1380/build-shared-fix.diff &&
 patch -p0 < build-shared-fix.diff

./configure --enable-shared

# Make sure you're in an xterm when you run make, part of it will require
# that $DISPLAY is set

make

# Install it as root
su -c "make install ; ldconfig"

cd
mkdir -p -m 0700 installed
rm -f installed/fltk-2.*.tar.*
mv fltk-2.0.x-r5274.tar.bz2 installed/


# If you ever want to uninstall FLTK 1.x, this should do it:
cd
su
test -d src/fltk-1.* && ( cd src/fltk-1.* ; make uninstall )
( cd /usr/local/bin ; rm -f fltk-config fluid )
test -d /usr/local/include/FL && rm -r /usr/local/include/FL
( cd /usr/local/lib ; rm -f libfltk.* libfltk_forms.* libfltk_gl.* \
 libfltk_images.* )
( cd /usr/local/man/cat1 ; rm -f fltk-config.1 fluid.1 )
( cd /usr/local/man/man1 ; rm -f fltk-config.1 fluid.1 )
rm -f /usr/local/man/cat3/fltk.3 /usr/local/man/man3/fltk.3
test -d /usr/local/share/doc/fltk && rm -r /usr/local/share/doc/fltk
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "fltk-1.*" -exec rm -r {} \;
rm -f ~/installed/fltk-1.*.tar.*


# If you ever want to uninstall FLTK 2.x, this should do it:
cd
su
test -d src/fltk-2.* && ( cd src/fltk-2.* ; make uninstall )
( cd /usr/local/bin ; rm -f fltk2-config fluid2 )
( cd /usr/local/lib ; rm -f libfltk2.* libfltk2_* )
test -d /usr/local/include/fltk && rm -r /usr/local/include/fltk
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "fltk-2.*" -exec rm -r {} \;
rm -f ~/installed/fltk-2.*.tar.*

Back to the list


Last updated: Tue, 07 Aug 2018 12:06:17 -0400
Jason Englander <jason at englanders dot us>