Notes for building Linux From Scratch ===================================== General ------- These notes are in cronological order. Unless otherwise noted, these modules are built using this sequence: CFLAGS=-march=i686 CPPFLAGS=-march=i686 ./configure --prefix=/usr --enable-shared make make install Some modules do not accept "--enable-shared" and some don't have a script at all. These exceptions are noted. LFS --- When basing from Slackware: - fix RLIM_INFINITY redefinition in /usr/include/bits/resource.h - link /usr/lib/libncurses.a to libcurses.a - build GCC - build make Follow normal LFS procedure except where noted below: glibc: if problems occur with time.h later , remove "#define __need_time_t" from sys/time.h gcc: use libstdc++ sources for C++ (see install.html) flex: make a script for lex: flex -l $* modutils: don't use --prefix kernel: might need pcmcia, get devpts up, might need db1 (or tweak db3) netkit: use netkit-combo: has lots of warnings and may break on time.h. net-tools tcp_wrappers (tcpd): remove setenv.o from AUX_OBJ (twice), set REAL_DAEMON_DIR=/usr/sbin, -DSYS_ERRLIST_DEFINED, add i686, must copy binaries, library, tcpd.h, and man pages by hand. dhcpcd scripts: use mine lynx tcsh jdk: put in /usr/lib, link: jdk->jdk-x.x.x java->jdk/jre imake: put into /opt/imake, should be after X? Libraries/Utils --------------- libsigc++ libreadline zlib: may not install static and shared in the same place. Linux-PAM: fix broken links to all dynamic libs libPropList ftp-BSD: edit Makefile for i686, fix SA_LEN problem in bsdport.h openssl: CFLAGS=-march=i686 CPPFLAGS=-march=i686 ./Configure --prefix=/usr --openssldir=/opt/ssl shared linux-elf ssh: build ssh1 before ssh2 samba: CFLAGS=-march=i686 ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/log --sharedstatedir=/var/log --with-smbmount --with-pam --with-syslog --with-privatedir=/etc --with-lockdir=/var/lock --without-sambabook, ln -s /etc/smb.conf in /usr/lib bc gmp popt2 db: (Berkley) build_unix: ../dist/configure --prefix=/usr --enable-compat185 (link /usr/include/db_185.h /usr/include/db1/db.h and /usr/lib/db-3.2.so db1.so) gdbm librep guile: fix "extern in_addr_t inet_aton" python audiofile esound X - Must use binary installation. Must create /var/state. Watch for errors. Create symlinks: /usr/X11 -> /usr/X11R6 /usr/bin/X11 -> /usr/X11/bin /usr/lib/X11 -> /usr/X11/lib /usr/include/X11 -> /usr/X11/include Graphics Libraries ------------------ lesstif: uconf and after make install, copy the bin, include, and lib directories to /usr/X11 jpeg: --enable-shared --enable-static, fix prefix in makefile, make install install-lib install-headers libpng: cp scripts/makefile.linux ./makefile and edit the makefile to add i686 libmng libungif tiff: hack configure to pass "DSO" test (comment out if statement) and set paths, make COPTS=-march=i686. xpm: comes with X!!! glib gtk+ imlib gtkmm(GTK--): earlier? wxGTK ghostscript: edit makefile: set zlib and libpng to shared and set path to all 3 lib sources, fix XINCLUDE. qt: enable features via configure, put into /opt/qt mesa: needed for full OpenGL support? glut: imake based, put into /opt/glut, fix X_LIBS in configure, -L/opt/glut/lib/glut freetype: CFLAGS=-march=i686 make setup CFG="--prefix=/usr" nedit GNOME ----- These are all installed in /opt/gnome gtk-engines ORBit gnome-libs: requires db with --enable-compat185 libgtop: libxml libghttp libglade: gnome-db gdk-pixbuf: gnome-db? oaf GConf gnome-vfs: requires GConf control-center xml-i18n-tools scrollkeeper gnome-print libunicode-gnome: use libunicode from GNOME, not Bowerbird. gal: can't make -j libgda bonobo gnome-db: problems with bonobo test (use --disable-bonobotest or hack configure) gtkhtml gnome-core gnome-applets mc: can't make -j bug-buddy glade: --with-bonobo --with-oaf gnome-python gnome-user-docs gnome-utils gnome-pim gnome-media gnome-audio: make install only gnome-games ee gtop ggv gdm: gdm.c missing #include gnome-guile: needs gtkhtml, which needs glibwww, bonobo and GAL??? gnomemm panelmm rep-gtk sawfish xscreensaver medusa: fix X_CFLAGS=-I/usr/X11/include in medusa-idled/Makefile ammonite librsvg eel nautilus gedit gnotepad+: gtk problems gnomeicu gabber gaim: gconf --enable-panel KDE --- kdesupport kdelibs: can't make -j kdebase: fix /lib/libshadow.so link kdegames kdegraphics kdeutils kdemultimedia: can't make -j kdenetwork kdeadmin kdetoys kde-i18n: won't build (not needed for US?) kdepim kdebindings: hack configure for python2.0 include path, make LIBPYTHON='-lpython2.0 -ldb' kdesdk kdevelop: can't make -j kdoc koffice Other Stuff ----------- libao libogg libvorbis: cc1 gets fatal signal 11?!?!?! xmms xmms-status: use gconf modplugxmms volnorm SDL (libsdl) avifile avi-xmms smpeg smpeg-xmms unzip: copy unix/Makefile .,add -march=i686, set prefix, make linux, make install zip: copy unix/Makefile .,add -march=i686, set prefix, make generic_gcc, make install