· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Jin LiveCD/LinuxFS

JinLiveCD/LinuxFS


* Linux From Scratch
  • sda11 는 linux from scratch 로 사용 (10 G)

 Download or otherwise obtain the following packages:

Binutils (2.16.1) - 12,272 KB:  http://ftp.gnu.org/gnu/binutils/
GCC (4.0.2) - 31,048 KB:  http://ftp.gnu.org/gnu/gcc/
Linux-Libc-Headers (2.6.12.0) - 2,480 KB:  http://ep09.pld-linux.org/~mmazur/linux-libc-headers/
Glibc (2.3.6) - 13,687 KB:  http://ftp.gnu.org/gnu/glibc/
adjusting the toolchain

Tcl (8.4.12) - 2,672 KB:  http://prdownloads.sourceforge.net/tcl/
Expect (5.43.0) - 416 KB:  http://expect.nist.gov/src/
DejaGNU (1.4.4) - 852 KB:  http://ftp.gnu.org/gnu/dejagnu/

GCC (4.0.2) - 31,048 KB:  http://ftp.gnu.org/gnu/gcc/
Binutils (2.16.1) - 12,272 KB:  http://ftp.gnu.org/gnu/binutils/

Gawk (3.1.5) - 1,696 KB:  http://ftp.gnu.org/gnu/gawk/
Coreutils (5.93) - 4,782 KB:  http://ftp.gnu.org/gnu/coreutils/
Bzip2 (1.0.3) - 596 KB:  http://www.bzip.org/
Gzip (1.3.5) - 284 KB:  ftp://alpha.gnu.org/gnu/gzip/
Diffutils (2.8.1) - 648 KB:  http://ftp.gnu.org/gnu/diffutils/
Findutils (4.2.27) - 887 KB:  http://ftp.gnu.org/gnu/findutils/
Make (3.80) - 904 KB:  http://ftp.gnu.org/gnu/make/
Grep (2.5.1a) - 520 KB:  http://ftp.gnu.org/gnu/grep/
Sed (4.1.4) - 632 KB:  http://ftp.gnu.org/gnu/sed/
Gettext (0.14.5) - 4,668 KB:  http://ftp.gnu.org/gnu/gettext/
Ncurses (5.5) - 1,683 KB:  ftp://invisible-island.net/ncurses/
Patch (2.5.4) - 156 KB:  http://ftp.gnu.org/gnu/patch/
Tar (1.15.1) - 1,580 KB:  http://ftp.gnu.org/gnu/tar/
Texinfo (4.8) - 1,492 KB:  http://ftp.gnu.org/gnu/texinfo/
Bash (3.1) - 1,824 KB:  http://ftp.gnu.org/gnu/bash/
M4 (1.4.4) - 300 KB:  http://ftp.gnu.org/gnu/m4/
Util-linux (2.12r) - 1,344 KB:  http://www.kernel.org/pub/linux/utils/util-linux/
Perl (5.8.7) - 9,628 KB:  http://ftp.funet.fi/pub/CPAN/src/

Autoconf (2.59) - 908 kilobytes (KB): http://ftp.gnu.org/gnu/autoconf/
Automake (1.9.6) - 748 KB: http://ftp.gnu.org/gnu/automake/
Bash Documentation (3.1) - 1,994 KB:  http://ftp.gnu.org/gnu/bash/
Bison (2.1) - 982 KB:  http://ftp.gnu.org/gnu/bison/
E2fsprogs (1.38) - 3,120 KB:  http://prdownloads.sourceforge.net/e2fsprogs/
File (4.16) - 399 KB:  ftp://ftp.gw.com/mirrors/pub/unix/file/
Flex (2.5.31) - 672 KB:  http://prdownloads.sourceforge.net/lex/
Groff (1.19.2) - 2,096 KB:  http://ftp.gnu.org/gnu/groff/
GRUB (0.97) - 772 KB:  ftp://alpha.gnu.org/gnu/grub/
Hotplug (2004_09_23) - 40 KB:  http://www.kernel.org/pub/linux/utils/kernel/hotplug/
Iana-Etc (2.00) - 174 KB:  http://www.sethwklein.net/projects/iana-etc/downloads/
Inetutils (1.4.2) - 752 KB:  http://ftp.gnu.org/gnu/inetutils/
IPRoute2 (051007) - 291 KB:  http://developer.osdl.org/dev/iproute2/download/
Kbd (1.12) - 624 KB:  http://www.kernel.org/pub/linux/utils/kbd/
Less (394) - 216 KB:  http://www.greenwoodsoftware.com/less/
LFS-Bootscripts (3.2.1) - 32 KB:  http://downloads.linuxfromscratch.org/
Libtool (1.5.20) - 1,642 KB:  http://ftp.gnu.org/gnu/libtool/
Linux (2.6.12.5) - 36,522 KB:  http://www.kernel.org/pub/linux/kernel/v2.6/
Man (1.6b) - 205 KB:  http://primates.ximian.com/~flucifredi/man/
Man-pages (2.17) - 1,688 KB:  http://www.kernel.org/pub/linux/docs/manpages/
Mktemp (1.5) - 68 KB:  ftp://ftp.mktemp.org/pub/mktemp/
Module-Init-Tools (3.2.2) - 165 KB:  http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/
Procps (3.2.6) - 221 KB:  http://procps.sourceforge.net/
Psmisc (21.9) - 193 KB:  http://prdownloads.sourceforge.net/psmisc/
Readline (5.1) - 1,456 KB:  http://ftp.gnu.org/gnu/readline/
Shadow (4.0.13) - 1,057 KB:  ftp://ftp.pld.org.pl/software/shadow/
Sysklogd (1.4.1) - 72 KB:  http://www.infodrom.org/projects/sysklogd/download/
Sysvinit (2.86) - 88 KB:  ftp://ftp.cistron.nl/pub/people/miquels/sysvinit/
Udev (071) - 427 KB:  http://www.kernel.org/pub/linux/utils/kernel/hotplug/
Udev Rules Configuration - 5 KB:  http://downloads.linuxfromscratch.org/udev-config-5.rules
Vim (6.4) - 3,650 KB:  ftp://ftp.vim.org/pub/vim/unix/
Vim (6.4) language files (optional) - 540 KB:  ftp://ftp.vim.org/pub/vim/extra/
Zlib (1.2.3) - 415 KB:  http://www.zlib.net/

Total size of these packages: 148 MB 
cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL PATH
EOF
  • binutils
  • gcc
  • glibc

binutils pass1


[root@localhost tools]# ls -R
.:
bin  i686-pc-linux-gnu  include  info  lib  man

./bin:
addr2line  as       gprof  nm       objdump  readelf  strings
ar         c++filt  ld     objcopy  ranlib   size     strip

./i686-pc-linux-gnu:
bin  lib

./i686-pc-linux-gnu/bin:
ar  as  ld  nm  objdump  ranlib  strip

./i686-pc-linux-gnu/lib:
ldscripts

./i686-pc-linux-gnu/lib/ldscripts:
elf_i386.x    elf_i386.xdc  elf_i386.xs   elf_i386.xw    i386linux.xr
elf_i386.xbn  elf_i386.xdw  elf_i386.xsc  i386linux.x    i386linux.xu
elf_i386.xc   elf_i386.xn   elf_i386.xsw  i386linux.xbn
elf_i386.xd   elf_i386.xr   elf_i386.xu   i386linux.xn

./include:
ansidecl.h  bfd.h  bfdlink.h  dis-asm.h  symcat.h

./info:
as.info    as.info-2  bfd.info    bfd.info-2     configure.info  ld.info
as.info-1  as.info-3  bfd.info-1  binutils.info  gprof.info      standards.info

./lib:
libbfd.a  libbfd.la  libiberty.a  libopcodes.a  libopcodes.la

./man:
man1

./man/man1:
addr2line.1  c++filt.1  ld.1       objcopy.1  readelf.1  strip.1
ar.1         dlltool.1  nlmconv.1  objdump.1  size.1     windres.1
as.1         gprof.1    nm.1       ranlib.1   strings.1

gcc pass1


  • mkdir -v ../gcc-build
  • cd ../gcc-build
../gcc-4.0.2/configure --prefix=/tools \
    --with-local-prefix=/tools --disable-nls --enable-shared \
    --enable-languages=c
  • PATH 에 의해 binutils 에서 설치한 as, ld 을 사용
  • --with-local-prefix 에 의해 binutils 에서 설치한 include 파일 사용

[root@localhost tools]# ls -R
.:
bin  i686-pc-linux-gnu  include  info  lib  libexec  man  share

./bin:
addr2line  cc      gcov                         ld       ranlib   strip
ar         cpp     gprof                        nm       readelf
as         gcc     i686-pc-linux-gnu-gcc        objcopy  size
c++filt    gccbug  i686-pc-linux-gnu-gcc-4.0.2  objdump  strings

./i686-pc-linux-gnu:
bin  lib

./i686-pc-linux-gnu/bin:
ar  as  ld  nm  objdump  ranlib  strip

./i686-pc-linux-gnu/lib:
ldscripts

./i686-pc-linux-gnu/lib/ldscripts:
elf_i386.x    elf_i386.xdc  elf_i386.xs   elf_i386.xw    i386linux.xr
elf_i386.xbn  elf_i386.xdw  elf_i386.xsc  i386linux.x    i386linux.xu
elf_i386.xc   elf_i386.xn   elf_i386.xsw  i386linux.xbn
elf_i386.xd   elf_i386.xr   elf_i386.xu   i386linux.xn

./include:
ansidecl.h  bfd.h  bfdlink.h  dis-asm.h  mf-runtime.h  symcat.h

./info:
as.info    bfd.info       configure.info     gccinstall.info  standards.info
as.info-1  bfd.info-1     cpp.info           gccint.info
as.info-2  bfd.info-2     cppinternals.info  gprof.info
as.info-3  binutils.info  gcc.info           ld.info

./lib:
gcc            libiberty.a      libmudflap.so.0.0.0  libmudflapth.so.0.0.0
libbfd.a       libmudflap.a     libmudflapth.a       libopcodes.a
libbfd.la      libmudflap.la    libmudflapth.la      libopcodes.la
libgcc_s.so    libmudflap.so    libmudflapth.so
libgcc_s.so.1  libmudflap.so.0  libmudflapth.so.0

./lib/gcc:
i686-pc-linux-gnu

./lib/gcc/i686-pc-linux-gnu:
4.0.2

./lib/gcc/i686-pc-linux-gnu/4.0.2:
crtbegin.o   crtbeginT.o  crtendS.o  install-tools  libgcc_eh.a
crtbeginS.o  crtend.o     include    libgcc.a       libgcov.a

./lib/gcc/i686-pc-linux-gnu/4.0.2/include:
README       iso646.h        mm_malloc.h    root       syslimits.h
X11          libdevmapper.h  mmintrin.h     slang      unwind.h
asm          limits.h        mozilla-1.7.8  stdarg.h   varargs.h
emmintrin.h  linux           openssl        stdbool.h  xmmintrin.h
float.h      mm3dnow.h       pmmintrin.h    stddef.h   zutil.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/asm:
posix_types.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/linux:
a.out.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/mozilla-1.7.8:
nspr  nss

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/mozilla-1.7.8/nspr:
md

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/mozilla-1.7.8/nspr/md:
_darwin.h  _rhapsody.h  _solaris.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/mozilla-1.7.8/nss:
jzconf.h  secport.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/openssl:
bn.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/root:
usr

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/root/usr:
X11R6

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/root/usr/X11R6:
include

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/root/usr/X11R6/include:
X11

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/root/usr/X11R6/include/X11:
Xos.h  Xos_r.h  Xosdefs.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/include/slang:
slang.h

./lib/gcc/i686-pc-linux-gnu/4.0.2/install-tools:
gsyslimits.h  include  macro_list  mkheaders.conf

./lib/gcc/i686-pc-linux-gnu/4.0.2/install-tools/include:
README       iso646.h   mm_malloc.h  stdarg.h   unwind.h
emmintrin.h  limits.h   mmintrin.h   stdbool.h  varargs.h
float.h      mm3dnow.h  pmmintrin.h  stddef.h   xmmintrin.h

./libexec:
gcc

./libexec/gcc:
i686-pc-linux-gnu

./libexec/gcc/i686-pc-linux-gnu:
4.0.2

./libexec/gcc/i686-pc-linux-gnu/4.0.2:
cc1  collect2  install-tools

./libexec/gcc/i686-pc-linux-gnu/4.0.2/install-tools:
fixinc.sh  fixincl  mkheaders

./man:
man1  man7

./man/man1:
addr2line.1  c++filt.1  gcc.1    ld.1       objcopy.1  readelf.1  strip.1
ar.1         cpp.1      gcov.1   nlmconv.1  objdump.1  size.1     windres.1
as.1         dlltool.1  gprof.1  nm.1       ranlib.1   strings.1

./man/man7:
fsf-funding.7  gfdl.7  gpl.7

./share:

  • linux-libc-headers 5 장
  • glibc 5 장
../glibc-2.3.6/configure --prefix=/tools \
    --disable-profile --enable-add-ons \
    --enable-kernel=2.6.0 --with-binutils=/tools/bin \
    --without-gd --with-headers=/tools/include \
    --without-selinux
[root@localhost tools]# cd bin
[root@localhost bin]# ls
addr2line  gccbug                       iconv      objcopy        strings
ar         gcov                         ld         objdump        strip
as         gencat                       ldd        pcprofiledump  tzselect
c++filt    getconf                      lddlibc4   ranlib         xtrace
catchsegv  getent                       locale     readelf
cc         gprof                        localedef  rpcgen
cpp        i686-pc-linux-gnu-gcc        mtrace     size
gcc        i686-pc-linux-gnu-gcc-4.0.2  nm         sprof
[root@localhost etc]# ls
ld.so.cache  ld.so.conf  localtime  rpc
[root@localhost lib]# ls
Mcrt1.o                   libdl.so.2              libnss_files.so.2
Scrt1.o                   libg.a                  libnss_hesiod-2.3.6.so
crt1.o                    libgcc_s.so             libnss_hesiod.so
crti.o                    libgcc_s.so.1           libnss_hesiod.so.2
crtn.o                    libiberty.a             libnss_nis-2.3.6.so
gcc                       libieee.a               libnss_nis.so
gconv                     libm-2.3.6.so           libnss_nis.so.2
gcrt1.o                   libm.a                  libnss_nisplus-2.3.6.so
ld-2.3.6.so               libm.so                 libnss_nisplus.so
ld-linux.so.2             libm.so.6               libnss_nisplus.so.2
libBrokenLocale-2.3.6.so  libmcheck.a             libopcodes.a
libBrokenLocale.a         libmemusage.so          libopcodes.la
libBrokenLocale.so        libmudflap.a            libpcprofile.so
libBrokenLocale.so.1      libmudflap.la           libpthread-2.3.6.so
libSegFault.so            libmudflap.so           libpthread.a
libanl-2.3.6.so           libmudflap.so.0         libpthread.so
libanl.a                  libmudflap.so.0.0.0     libpthread.so.0
libanl.so                 libmudflapth.a          libpthread_nonshared.a
libanl.so.1               libmudflapth.la         libresolv-2.3.6.so
libbfd.a                  libmudflapth.so         libresolv.a
libbfd.la                 libmudflapth.so.0       libresolv.so
libbsd-compat.a           libmudflapth.so.0.0.0   libresolv.so.2
libc-2.3.6.so             libnsl-2.3.6.so         librpcsvc.a
libc.a                    libnsl.a                librt-2.3.6.so
libc.so                   libnsl.so               librt.a
libc.so.6                 libnsl.so.1             librt.so
libc_nonshared.a          libnss_compat-2.3.6.so  librt.so.1
libcrypt-2.3.6.so         libnss_compat.so        libthread_db-1.0.so
libcrypt.a                libnss_compat.so.2      libthread_db.so
libcrypt.so               libnss_dns-2.3.6.so     libthread_db.so.1
libcrypt.so.1             libnss_dns.so           libutil-2.3.6.so
libdl-2.3.6.so            libnss_dns.so.2         libutil.a
libdl.a                   libnss_files-2.3.6.so   libutil.so
libdl.so                  libnss_files.so         libutil.so.1
[root@localhost libexec]# ls -R
.:
gcc  getconf  pt_chown

./gcc:
i686-pc-linux-gnu

./gcc/i686-pc-linux-gnu:
4.0.2

./gcc/i686-pc-linux-gnu/4.0.2:
cc1  collect2  install-tools

./gcc/i686-pc-linux-gnu/4.0.2/install-tools:
fixinc.sh  fixincl  mkheaders

./getconf:
POSIX_V6_ILP32_OFF32  POSIX_V6_ILP32_OFFBIG
[root@localhost sbin]# ls
iconvconfig  ldconfig  nscd  nscd_nischeck  rpcinfo  sln  zdump  zic
[root@localhost share]# ls
i18n  locale  zoneinfo

  • make -C ld clean
  • make -C ld LIB_PATH=/tools/lib
  • make -C ld install
  • 이후에는 모든 패키지가 /tools/lib 밑의 것을 링크함.

  • glibc 에 의해 생성된 /tools/lib/ld-linux.so.2 를 dynamic linker 로 사용하기 위해 gcc 의 specfile 변경함.
SPECFILE=`dirname $(gcc -print-libgcc-file-name)`/specs &&
gcc -dumpspecs > $SPECFILE &&
sed 's@^/lib/ld-linux.so.2@/tools&@g' $SPECFILE > tempspecfile &&
mv -vf tempspecfile $SPECFILE &&
unset SPECFILE


lfs:/mnt/lfs/sources/gcc-build$ ../gcc-4.0.2/contrib/test_summary > kk
lfs:/mnt/lfs/sources/gcc-build$ vi kk
lfs:/mnt/lfs/sources/gcc-build$ cat kk
cat <<'EOF' |
LAST_UPDATED: Obtained from CVS: -rgcc_4_0_2_release

Native configuration is i686-pc-linux-gnu

                === g++ tests ===


Running target unix
FAIL: g++.dg/template/array14.C (test for excess errors)
XPASS: g++.old-deja/g++.other/init5.C execution test

                === g++ Summary ===

# of expected passes            11130
# of unexpected failures        1
# of unexpected successes       1
# of expected failures          68
# of unsupported tests          56
/mnt/lfs/sources/gcc-build/gcc/testsuite/../g++  version 4.0.2

                === gcc tests ===


Running target unix
XPASS: gcc.dg/vect/vect-22.c scan-tree-dump-times vectorized 3 loops 1

                === gcc Summary ===

# of expected passes            35255
# of unexpected successes       1
# of expected failures          94
# of untested testcases         28
# of unsupported tests          328
/mnt/lfs/sources/gcc-build/gcc/xgcc  version 4.0.2

                === libmudflap tests ===


Running target unix
FAIL: libmudflap.cth/pass40-frag.c execution test
FAIL: libmudflap.cth/pass40-frag.c output pattern test
FAIL: libmudflap.cth/pass40-frag.c (-O2) execution test
FAIL: libmudflap.cth/pass40-frag.c (-O2) output pattern test
FAIL: libmudflap.cth/pass40-frag.c (-O3) execution test
FAIL: libmudflap.cth/pass40-frag.c (-O3) output pattern test

                === libmudflap Summary ===

# of expected passes            1282
# of unexpected failures        6
                === libstdc++ tests ===


Running target unix
XPASS: 22_locale/locale/cons/12658_thread-1.cc execution test

                === libstdc++ Summary ===

# of expected passes            3668
# of unexpected successes       1
# of expected failures          13

Compiler version: 4.0.2
Platform: i686-pc-linux-gnu
configure flags: --prefix=/tools --with-local-prefix=/tools --enable-clocale=gnu --enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-libstdcxx-pch --enable-languages=c,c++
EOF
Mail -s "Results for 4.0.2 testsuite on i686-pc-linux-gnu" gcc-testresults@gcc.gnu.org &&
mv /mnt/lfs/sources/gcc-build/./gcc/testsuite/g++.sum /mnt/lfs/sources/gcc-build/./gcc/testsuite/g++.sum.sent &&
mv /mnt/lfs/sources/gcc-build/./gcc/testsuite/gcc.sum /mnt/lfs/sources/gcc-build/./gcc/testsuite/gcc.sum.sent &&
mv /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libmudflap/testsuite/libmudflap.sum /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libmudflap/testsuite/libmudflap.sum.sent &&
mv /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum.sent &&
mv /mnt/lfs/sources/gcc-build/./gcc/testsuite/g++.log /mnt/lfs/sources/gcc-build/./gcc/testsuite/g++.log.sent &&
mv /mnt/lfs/sources/gcc-build/./gcc/testsuite/gcc.log /mnt/lfs/sources/gcc-build/./gcc/testsuite/gcc.log.sent &&
mv /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libmudflap/testsuite/libmudflap.log /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libmudflap/testsuite/libmudflap.log.sent &&
mv /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libstdc++-v3/testsuite/libstdc++.log /mnt/lfs/sources/gcc-build/./i686-pc-linux-gnu/libstdc++-v3/testsuite/libstdc++.log.sent &&
true

  • 6장 gcc
  • /sources/gcc-build/gcc/Makefile
  • insert -I/usr/include
# Options to use when compiling crtbegin/end.
CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) -I/usr/include $(MULTILIB_CFLAGS) -g0 \
  -finhibit-size-directive -fno-inline-functions -fno-exceptions \
  -fno-zero-initialized-in-bss -fno-unit-at-a-time

# The GCC to use for compiling libgcc.a and crt*.o.
# Usually the one we just built.
# Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).
GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) ./xgcc -B./ -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include -I/usr/include -L$(objdir)/../ld

  • patch 안 된 것을 사용해야 함.

in company

  • 6.11 glibc
  • multibyte study
root:/sources/glibc-build# grep Error glibc-check-log
make[2]: [/sources/glibc-build/posix/annexc.out] Error 1 (ignored)
make[2]: *** [/sources/glibc-build/nptl/tst-attr3.out] Error 1
make[2]: *** [/sources/glibc-build/nptl/tst-clock2.out] Error 1
make[1]: *** [nptl/tests] Error 2
make: *** [check] Error 2

  • coreutils
  • make NON_ROOT_USERNAME=dummy RUN_EXPENSIVE_TESTS=yes check
  • gettext tar
  • inetutil think about PAM
  • perl tar
  • tar already patch gcc related
  • util-linux tar

setup for toolchain

  • export LFS=/mnt/lfs
  • mkdir -pv $LFS
  • mount -v /dev/xxx $LFS
  • mkdir -v $LFS/sources
  • chmod -v a+wt $LFS/sources
  • mkdir -v $LFS/tools
  • ln -sv $LFS/tools /
  • groupadd lfs
  • useradd -s /bin/bash -g lfs -m -k /dev/null lfs
  • passwd lfs
  • chown -v lfs $LFS/tools
  • chown -v lfs $LFS/sources
  • su - lfs
cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF
cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL PATH
EOF
  • source ~/.bash_profile

make toolchain

  • Binutils-2.16.1 - Pass 1
    • mkdir -v ../binutils-build
    • cd ../binutils-build
    • ../binutils-2.16.1/configure --prefix=/tools --disable-nls
    • make
    • make install
    • make -C ld clean
    • make -C ld LIB_PATH=/tools/lib
  • GCC-4.0.2 - Pass 1
    • mkdir -v ../gcc-build
    • cd ../gcc-build
../gcc-4.0.2/configure --prefix=/tools \
    --with-local-prefix=/tools --disable-nls --enable-shared \
    --enable-languages=c
  • make bootstrap
    • PATH 에 의해 binutils 에서 설치한 as, ld 을 사용
    • --with-local-prefix 에 의해 binutils 에서 설치한 include 파일 사용
  • make install
  • ln -vs gcc /tools/bin/cc
  • Linux-Libc-Headers-2.6.12.0
    • cp -Rv include/asm-i386 /tools/include/asm
    • cp -Rv include/linux /tools/include
  • Glibc-2.3.6
    • mkdir -v ../glibc-build
    • cd ../glibc-build
../glibc-2.3.6/configure --prefix=/tools \
    --disable-profile --enable-add-ons \
    --enable-kernel=2.6.0 --with-binutils=/tools/bin \
    --without-gd --with-headers=/tools/include \
    --without-selinux
  • make
  • make check or make -k check > glibc-check-log 2>&1
  • mkdir -v /tools/etc
  • touch /tools/etc/ld.so.conf
  • make install
  • make localedata/install-locales or
mkdir -pv /tools/lib/locale
localedef -i de_DE -f ISO-8859-1 de_DE
localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro
localedef -i en_HK -f ISO-8859-1 en_HK
localedef -i en_PH -f ISO-8859-1 en_PH
localedef -i en_US -f ISO-8859-1 en_US
localedef -i es_MX -f ISO-8859-1 es_MX
localedef -i fa_IR -f UTF-8 fa_IR
localedef -i fr_FR -f ISO-8859-1 fr_FR
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
localedef -i it_IT -f ISO-8859-1 it_IT
localedef -i ja_JP -f EUC-JP ja_JP
  • Adjusting the Toolchain
    • cd binutils-build
    • make -C ld install
      • 앞에서 make -C ld clean, make -C ld LIB_PATH=/tools/lib 을 수행하였으므로,
      • 이후에는 모든 패키지가 /tools/lib 밑의 것을 링크함.

SPECFILE=`dirname $(gcc -print-libgcc-file-name)`/specs &&
gcc -dumpspecs > $SPECFILE &&
sed 's@^/lib/ld-linux.so.2@/tools&@g' $SPECFILE > tempspecfile &&
mv -vf tempspecfile $SPECFILE &&
unset SPECFILE
  • glibc 에 의해 생성된 /tools/lib/ld-linux.so.2 를 dynamic linker 로 사용하기 위해 gcc 의 specfile 변경함.
GCC_INCLUDEDIR=`dirname $(gcc -print-libgcc-file-name)`/include &&
find ${GCC_INCLUDEDIR}/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \; &&
rm -vf `grep -l "DO NOT EDIT THIS FILE" ${GCC_INCLUDEDIR}/*` &&
unset GCC_INCLUDEDIR
  • fixinclude 에 의해 생성된 include 파일을 제거하여, 앞으로는 gcc 와 glibc 를 위한 header file 만 사용함.
  • Tcl-8.4.12
cd unix
cp -v configure{,.orig}
sed "s/relid'/relid/" configure.orig > configure
  • ./configure --prefix=/tools
  • make
  • make install
  • make install-private-headers
  • ln -sv tclsh8.4 /tools/bin/tclsh
  • Expect-5.43.0
    • patch -Np1 -i ../expect-5.43.0-spawn-1.patch
./configure --prefix=/tools --with-tcl=/tools/lib \
   --with-tclinclude=/tools/include --with-x=no
  • make
  • make SCRIPTS="" install
  • DejaGNU-1.4.4
    • ./configure --prefix=/tools
    • make install
  • GCC-4.0.2 - Pass 2
    • 새로 생성한 glibc 를 이용하여 gcc 새로 만듬.
    • expect -c "spawn ls"
cp -v gcc/Makefile.in{,.orig} &&
sed 's@\./fixinc\.sh@-c true@' gcc/Makefile.in.orig > gcc/Makefile.in
  • 새로 생성된 gcc 와 glibc 의 header file 을 사용하므로, fixinclude 가 필요없음.
cp -v gcc/Makefile.in{,.tmp} &&
sed 's/^XCFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in.tmp \
        > gcc/Makefile.in
  • bootstrap 가 아닌 경우에는 -formit-frame-point 가 없는 것이 default 임.
  • patch -Np1 -i ../gcc-4.0.2-specs-1.patch
    • default dynamic linker 위치 변경(앞에서 했는데...)
    • /usr/include 를 default include path 에서 제외.
  • mkdir -v ../gcc-build
  • cd ../gcc-build
../gcc-4.0.2/configure --prefix=/tools \
    --with-local-prefix=/tools --enable-clocale=gnu \
    --enable-shared --enable-threads=posix \
    --enable-__cxa_atexit --enable-languages=c,c++ \
    --disable-libstdcxx-pch
pass 1
../gcc-4.0.2/configure --prefix=/tools \
    --with-local-prefix=/tools --disable-nls --enable-shared \
    --enable-languages=c
  • c++ 을 위한 option 을 추가한 것임.
  • make
  • make -k check
  • ../gcc-4.0.2/contrib/test_summary
  • make install
  • binutils-2.16.1 pass 2
    • mkdir -v ../binutils-build
    • cd ../binutils-build
../binutils-2.16.1/configure --prefix=/tools \
    --disable-nls --enable-shared --with-lib-path=/tools/lib
  • --with-lib-path=/tools/lib 에 의해 /tools/lib 밑의 라이브러리를 링크함.
  • make
  • make check
  • make install
  • make -C ld clean
  • make -C ld LIB_PATH=/usr/lib:/lib
  • Gawk-3.1.5
  • Coreutils-5.93
  • Bzip2-1.0.3
  • Gzip-1.3.5
  • Diffutils-2.8.1
  • Findutils-4.2.27
  • Make-3.80
  • Grep-2.5.1a
  • Sed-4.1.4
  • Gettext-0.14.5
  • Ncurses-5.5
  • Patch-2.5.4
  • Tar-1.15.1
  • Texinfo-4.8
  • Bash-3.1
  • M4-1.4.4
  • Util-linux-2.12r
  • Perl-5.8.7
  • Stripping

Building LFS base system

  • mounting virtual kernel file systems
    • mkdir -pv $LFS/{proc,sys}
    • mount -vt proc proc $LFS/proc
    • mount -vt sysfs sysfs $LFS/sys
    • mount -vft tmpfs tmpfs $LFS/dev
    • mount -vft tmpfs tmpfs $LFS/dev/shm
    • mount -vft devpts -o gid=4,mode=620 devpts $LFS/dev/pts
  • entering the chroot environment
chroot "$LFS" /tools/bin/env -i \
    HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
    /tools/bin/bash --login +h
  • chamginig ownweship
    • chown -R 0:0 /tools
  • creating directories
  • creating essential symlinks
    • ln -sv /tools/bin/{bash,cat,pwd,stty} /bin
    • ln -sv /tools/bin/perl /usr/bin
    • ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib
    • ln -sv bash /bin/sh
  • creating the passwd, group, and log files
  • populating /dev
  • linux-libc-headers-2.6.12.0
    • install -d /usr/include/asm
    • cp -Rv include/asm-i386/* /usr/include/asm
    • cp -Rv include/linux /usr/include
    • chown -Rv root:root /usr/include/{asm,linux}
    • find /usr/include/{asm,linux} -type d -exec chmod -v 755 {} \;
    • find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;
  • man-pages-2.18
  • glibc-2.3.6

diff lfs and fedora

  • /etc/sysconfig/clock
    • lfs
# Begin /etc/sysconfig/clock

UTC=1

# End /etc/sysconfig/clock
  • fedora
ZONE="Asia/Seoul"
UTC=false
ARC=false
  • /etc/sysconfig/console
    • lfs: file
    • fedora: directory
  • /etc/kbd
    • lfs: directory
    • fedora: 없음
  • /etc/sysconfig/network-devices
    • lfs: directory
    • fedora: networking 과 비슷은 한데...
  • /etc/profile
    • used by login shell
  • /etc/profile.d
    • dircolor.sh, extrapaths.sh,readline.sh, tink-term.sh, umask.sh, X.sh, extra-prompt.sh, i18n.sh
      • fedora 에는 없음.

  • /etc/bashrc
    • non-login shell 이 사용함.
  • random
    • fedora 는 다른 방법 사용
  • /usr/sbin/compressdoc, /etc/man.conf
    • fedora 에는 없음
  • /etc/pam.conf
    • fedora 에는 없음
  • /etc/pam.d/chage
    • fedora 없음
  • /etc/rc.d/rc.iptables
    • fedora 는 없음
    • do more after direct login

blfs

  • popt 1.7 version 점검 필요
    • fedora popt-1.10.1-21

gnome install


GNOME Core Packages

1.  ORBit2-2.12.4
The ORBit2 package contains a high-performance CORBA Object Request Broker. This allows programs to send requests and receive replies from other programs.
Required
libIDL-0.8.6 and popt-1.7-5
Optional
GTK-Doc-1.4 and OpenSSL-0.9.7i 

2.  libbonobo-2.10.1
The libbonobo package contains libbonobo libraries. This is a component and compound document system for GNOME-2.
Required
ORBit2-2.12.4, libxml2-2.6.22 and XML::Parser
Optional
X (XFree86-4.5.0 or X.org-6.8.2) and GTK-Doc-1.4 

3.  GConf-2.12.0
The GConf package contains a configuration database system.
Required
ORBit2-2.12.4 and libxml2-2.6.22
Optional
GTK+-2.8.9, OpenLDAP-2.3.11, GTK-Doc-1.4 and DocBook-utils-0.6.14 

*  desktop-file-utils-0.10
The desktop-file-utils package contains command line utilities for working with  desktop entries. These utilities are used by GNOME-2 and other applications to manipulate the MIME-types application databases and help adhere to the desktop entries standards specification.
Required
GLib-2.8.4 and popt-1.7-5
Optional
Emacs-21.4a 

4.  GNOME MIME Data-2.4.2
The GNOME MIME Data package contains the base set of file types and applications for GNOME-2.
Required
XML::Parser 

5.  GNOME Virtual File System-2.12.1
The GNOME Virtual File System  package contains virtual file system libraries. This is used as one of the foundations of the Nautilus  file manager.
Required
intltool-0.34.1, GConf-2.12.0, libbonobo-2.10.1, GNOME MIME Data-2.4.2 and shared-mime-info-0.16
Optional
Samba-3.0.20b, CDParanoia-III-9.8, Gamin-0.1.7, HAL-0.5.4, GTK-Doc-1.4, OpenSSH-4.2p1, OpenSSL-0.9.7i or GnuTLS, Heimdal-0.7.1 or MIT krb5-1.4.1, OpenAFS and Howl 

6.  libgnome-2.12.0.1
The libgnome package contains the libgnome library.
Required
GNOME Virtual File System-2.12.1 and EsounD-0.2.36
Optional
GTK-Doc-1.4 

7.  libgnomecanvas-2.12.0
The libgnomecanvas package contains the GNOME canvas library. It is an engine for structured graphics and one of the essential GNOME libraries.
Required
libglade-2.5.1 and libart_lgpl-2.3.17
Optional
GTK-Doc-1.4 

8.  libbonoboui-2.10.1
The libbonoboui package contains libbonoboui libraries.
Required
libgnome-2.12.0.1 and libgnomecanvas-2.12.0
Optional
GTK-Doc-1.4 

9.  GNOME Icon Theme-2.12.1
The GNOME Icon Theme package contains an assortment of scalable and non-scalable icons of different sizes and themes.
Required
hicolor-icon-theme-0.8 and XML::Parser
Optional
pkg-config-0.20 

10.  gnome-keyring-0.4.5
The gnome-keyring package contains a daemon that keeps passwords and other secrets for users.
Required
GTK+-2.8.9 

11.  libgnomeui-2.12.0
The libgnomeui package contains libgnomeui libraries.
Required
libbonoboui-2.10.1 and gnome-keyring-0.4.5
Optional
libjpeg-6b and GTK-Doc-1.4 

12.  GTK Engines-2.6.5
The GTK Engines package contains eight themes/engines and two additional engines for GTK2.
Required
GTK+-2.8.9 

13.  GNOME Themes-2.12.1
The GNOME Themes package contains several more theme sets.
Required
intltool-0.34.1 and GTK Engines-2.6.5 

14.  ScrollKeeper-0.3.14
The ScrollKeeper package contains a cataloging system for documentation. This is useful for managing documentation metadata and providing an API to help browsers find, sort and search the document catalog.
Required
intltool-0.34.1, libxslt-1.1.15 and DocBook XML DTD-4.4 

15.  GNOME Doc Utils-0.4.4
The GNOME Doc Utils package is a collection of documentation utilities for the GNOME project. Notably, it contains utilities for building documentation and all auxiliary files in your source tree, and it contains the DocBook XSLT stylesheets that were once distributed with Yelp. Starting with GNOME 2.8, Yelp requires GNOME Doc Utils for the XSLT. Starting with GNOME 2.12, many of the core GNOME packages require GNOME Doc Utils.
Required
Python-2.4.2 and ScrollKeeper-0.3.14
Optional
pkg-config-0.20 

16.  GNOME Desktop-2.12.1
The GNOME Desktop package contains the gnome-about  program, the libgnome-desktop-2 library and GNOME's core graphics files and icons.
Required
libgnomeui-2.12.0 and GNOME Doc Utils-0.4.4
Recommended
startup-notification-0.8 

17.  gnome-backgrounds-2.12.1
The gnome-backgrounds package contains a set of backgrounds used in the GNOME desktop.
Required
intltool-0.34.1 

18.  gnome-menus-2.12.0
The gnome-menus package contains an implementation of the draft “Desktop Menu Specification” from freedesktop.org (http://www.freedesktop.org/Standards/menu-spec). Also contained are the GNOME menu layout configuration files, .directory  files and a menu related utility program.
Required
GLib-2.8.4 and intltool-0.34.1
Optional
Python-2.4.2 and Gamin-0.1.7 

19.  GNOME Panel-2.12.1
The GNOME Panel package contains hooks to the menu sub-system and the applet sub-system.
Required
GNOME Desktop-2.12.1, libwnck-2.12.1 and gnome-menus-2.12.0
Optional
Evolution Data Server-1.4.1.1 (required if you plan on installing Evolution or GnomeMeeting) and GTK-Doc-1.4 

20.  GNOME Session-2.12.0
The GNOME Session package contains the GNOME session manager.
Required
libgnomeui-2.12.0
Optional
tcpwrappers-7.6 

21.  VTE-0.11.15
The VTE package contains a termcap file implementation for terminal emulators.
Required
GTK+-2.8.9
Optional
GTK-Doc-1.4 and PyGTK 

22.  GNOME Terminal-2.12.0
The GNOME Terminal package contains the console. This is useful for executing programs from a command prompt.
Required
libgnomeui-2.12.0, ScrollKeeper-0.3.14, VTE-0.11.15 and startup-notification-0.8 

23.  LibGTop-2.12.0
The LibGTop package contains the GNOME top libraries.
Required
GLib-2.8.4
Optional
popt-1.7-5, GDBM-1.8.3 and X (XFree86-4.5.0 or X.org-6.8.2) 

24.  GAIL-1.8.5
The GAIL package contains the GNOME Accessibility Implementation Libraries.
Required
libgnomecanvas-2.12.0
Optional
GTK-Doc-1.4 

25.  GNOME Applets-2.12.0
The GNOME Applets package contains small applications which generally run in the background and display their output to the GNOME  panel.
Required
GAIL-1.8.5, GNOME Panel-2.12.1 and libxklavier-2.0
Optional
LibGTop-2.12.0, GStreamer Plug-ins-0.8.11, HAL-0.5.4, gucharmap-1.4.4, system-tools-backends-1.4.0, DocBook-utils-0.6.14, libapm and libnotify 

26.  EEL-2.12.1
The EEL package contains the Eazel Extensions Library. This is a collection of widgets and extensions to the GNOME platform.
Required
GNOME Desktop-2.12.1, gnome-menus-2.12.0 and GAIL-1.8.5 

27.  Nautilus-2.12.1
The Nautilus package contains the GNOME shell and file manager.
Required
EEL-2.12.1, libexif-0.6.12 and librsvg-2.12.7
Optional
startup-notification-0.8 and DocBook-utils-0.6.14 

28.  Yelp-2.12.1
The Yelp package contains the help browser. This is useful for viewing help files.
Required
libgnomeui-2.12.0, GNOME Doc Utils-0.4.4 and a Gecko HTML rendering engine (Mozilla-1.7.11 or Firefox-1.5 or Thunderbird-1.0.6) 

29.  Control Center-2.12.1
The Control Center package contains the GNOME settings managers.
Required
libxklavier-2.0, Metacity-2.12.1, GNOME Icon Theme-2.12.1 and Nautilus-2.12.1
Optional
Evolution Data Server-1.4.1.1, ALSA-1.0.9, GStreamer Plug-ins-0.8.11 and XScreenSaver-4.22 

30.  GNOME2 User Docs-2.8.1
The GNOME2 User Docs package contains end user documents for GNOME.
Required
ScrollKeeper-0.3.14
Optional
DocBook-utils-0.6.14 

* Configuring the Core GNOME Packages

GNOME Additional Packages

31.  libgnomecups-0.2.2
The libgnomecups package contains a library used to wrap the CUPS  API in a GLib fashion, so CUPS code can be cleanly integrated with GLib code.
Required
CUPS-1.1.23, GLib-2.8.4 and intltool-0.34.1 

32.  libgnomeprint-2.12.1
The libgnomeprint package contains libgnomeprint libraries.
Required
Pango-1.10.2, libart_lgpl-2.3.17, Fontconfig-2.3.2, popt-1.7-5, libxml2-2.6.22 and XML::Parser
Optional
CUPS-1.1.23 (and libgnomecups-0.2.2), GTK-Doc-1.4 and DocBook-utils-0.6.14 

33.  libgnomeprintui-2.12.1
The libgnomeprintui package contains the libgnomeprintui library.
Required
libgnomecanvas-2.12.0, GNOME Icon Theme-2.12.1 and libgnomeprint-2.12.1
Optional
GTK-Doc-1.4 

34.  GtkHTML-3.8.1
The GtkHTML package contains a lightweight HTML rendering/printing/editing engine. This is an Evolution specific application at this time.
Required
libgnomeui-2.12.0, GAIL-1.8.5, GNOME Icon Theme-2.12.1 and libgnomeprintui-2.12.1
Optional
libsoup-2.2.6.1 

35.  libgtkhtml-2.6.3
The libgtkhtml package contains the libgtkhtml-2 library. This library provides an API for rendering HTML.
Required
GTK+-2.8.9 and libxml2-2.6.22
Optional
GAIL-1.8.5 and GNOME Virtual File System-2.12.1 

36.  Evolution Data Server-1.4.1.1
The Evolution Data Server package provides a unified backend for programs that work with contacts, tasks, and calendar information. It was originally developed for Evolution (hence the name), but is now used by other packages as well.
Required
libgnomeui-2.12.0 and libsoup-2.2.6.1
Optional
OpenLDAP-2.3.11, Mozilla-1.7.11 or Firefox-1.5 or Thunderbird-1.0.6 (NSS/NSPR libs for SSL and S/MIME support), Sendmail-8.13.4, Heimdal-0.7.1 or MIT krb5-1.4.1, krb4, GTK-Doc-1.4 and DocBook-utils-0.6.14 

37.  gtksourceview-1.4.2
The gtksourceview package contains libgtksourceview libraries. This is useful for extending the GTK text functions to include syntax highlighting.
Required
GNOME Virtual File System-2.12.1 and libgnomeprintui-2.12.1
Optional
GTK-Doc-1.4 

38.  system-tools-backends-1.4.0
The system-tools-backends are a set of cross-platform scripts for Linux and other Unix systems. The backends provide a standard XML interface for modifying the configuration regardless of the distribution being used.
Required
intltool-0.34.1 

39.  gnome-audio-2.0.0
The gnome-audio package contains a set of default sounds for the GNOME GUI desktop. Sound files for startup, shutdown and many GTK+ events are included. These sounds compliment the GNOME Media package.

40.  bug-buddy-2.12.1
The bug-buddy package contains a graphical bug reporting tool. This can extract debugging information from a core file or crashed application.
Required
GNOME Desktop-2.12.1 and gnome-menus-2.12.0 

41.  gedit-2.12.1
The gedit package contains a lightweight UTF-8 text editor for the GNOME desktop.
Required
EEL-2.12.1 and gtksourceview-1.4.2
Optional
Aspell-0.60.4 

42.  EOG-2.12.1
The EOG package contains Eye of GNOME. This is useful for viewing and cataloging image files.
Required
libgnomeui-2.12.0 and libgnomeprintui-2.12.1
Optional
libjpeg-6b, libexif-0.6.12 and lcms-1.14 

43.  GGV-2.12.0
The GGV package contains a PostScript file viewer.
Required
libgnomeui-2.12.0, and ESP Ghostscript-8.15.1 or AFPL Ghostscript-8.51
Optional
CUPS-1.1.23 or LPRng-3.8.28 

44.  Evince-0.4.0
The Evince package contains a document viewer for multiple document formats. It currently supports PDF, Postscript, DjVu, TIFF and DVI. This is useful for viewing documents of various types using one simple application instead of the multiple document viewers that once existed on the GNOME Desktop.
Required
libgnomeui-2.12.0, GNOME Doc Utils-0.4.4, libgnomeprintui-2.12.1, Poppler-0.4.2 (built with GTK+ support), ESP Ghostscript-8.15.1 or AFPL Ghostscript-8.51 and which-2.16
Optional
Nautilus-2.12.1, D-BUS-0.50, LibTIFF-3.7.4, TeX-3.0, DjVuLibre and t1lib 

45.  File Roller-2.12.1
File Roller is an archive manager for GNOME with support for tar, bzip2, gzip, zip, jar, compress, lzop and many other archive formats.
Required
Nautilus-2.12.1 

46.  GConf Editor-2.12.0
The GConf Editor package contains a GUI editor for the GConf  configuration database.
Required
libgnomeui-2.12.0 

47.  GNOME Utilities-2.12.1
The GNOME Utilities package contains a collection of small applications designed to make your life a little easier.
Required
GNOME Panel-2.12.1 and libgnomeprintui-2.12.1
Optional
Linux-PAM-0.99.2.0 (only if consolehelper is also installed) and HAL-0.5.4 

48.  GNOME System Monitor-2.12.1
The GNOME System Monitor package contains gnome-system-monitor, GNOME's replacement for gtop.
Required
libgnomeui-2.12.0, libwnck-2.12.1 and LibGTop-2.12.0 

49.  Nautilus CD Burner-2.12.1
The Nautilus CD Burner lets you write files to a CD burner easily with GNOME; by drag-and-dropping files using the GNOME file manager, Nautilus.
Required
Nautilus-2.12.1 and Cdrtools-2.01
Optional
HAL-0.5.4 

50.  GNOME Media-2.12.0
The GNOME Media package contains GNOME's media applications.
Required
Nautilus CD Burner-2.12.1
Recommended
GStreamer Plug-ins-0.8.11 (required for the mixer and recorder to work)
Optional
Sendmail-8.13.4 (or other MTA that provides /usr/sbin/sendmail) and DocBook-utils-0.6.14 

51.  GNOME Netstatus-2.12.0
The GNOME Netstatus package contains a panel applet that monitors network interfaces. It provides indicators for incoming and outgoing data, packets received and transmitted, and information about the network interface such as IP information and Ethernet address.
Required
GNOME Panel-2.12.1 

52.  gcalctool-5.6.31
gcalctool is a powerful graphical calculator with financial, logical and scientific modes. It uses a multiple precision package to do its arithmetic to give a high degree of accuracy.
Required
libgnomeui-2.12.0 and ScrollKeeper-0.3.14 

53.  gucharmap-1.4.4
gucharmap is a Unicode character map and font viewer. It allows you to browse through all the available Unicode characters and categories for the installed fonts, and to examine their detailed properties. It is an easy way to find the character you might only know by its Unicode name or code point.
Required
intltool-0.34.1, GTK+-2.8.9 and GNOME Doc Utils-0.4.4
Optional
libgnomeui-2.12.0 and ScrollKeeper-0.3.14 

54.  Zenity-2.12.1
Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you to display GTK+ dialog boxes from the command line and shell scripts.
Required
libgnomecanvas-2.12.0 and GNOME Doc Utils-0.4.4 

55.  Epiphany-1.8.2
Epiphany is a simple yet powerful GNOME web browser targeted at non-technical users. Its principles are simplicity and standards compliance.
Required
GNOME Desktop-2.12.1, libgnomeprintui-2.12.1, D-BUS-0.50, which-2.16, iso-codes-0.48, and Mozilla-1.7.11 or Firefox-1.5 or Thunderbird-1.0.6
Optional
startup-notification-0.8, GNOME-Python (requires PyGTK and can use PyORBit) and GTK-Doc-1.4 

56.  GnomeMeeting-1.2.2
GnomeMeeting is an H.323 compatible videoconferencing and VOIP/IP-Telephony application that allows you to make audio and video calls to remote users with H.323 hardware or software (such as Microsoft Netmeeting). It supports all modern videoconferencing features, such as registering to an ILS directory, gatekeeper support, making multi-user conference calls using an external MCU, using modern Quicknet telephony cards, and making PC-To-Phone calls.
Required
libgnomeui-2.12.0, ScrollKeeper-0.3.14, Evolution Data Server-1.4.1.1, OpenLDAP-2.3.11, PWLib-1.8.7 (compiled with OpenLDAP support) and OpenH323-1.15.6
Optional
SDL-1.2.9 (required for full-screen video), D-BUS-0.50 and Howl 

57.  GNOME Keyring Manager-2.12.0
The GNOME Keyring Manager package contains a keyring management program for the GNOME Desktop. This is useful for maintenance of a keyring database using a graphical user interface.
Required
libgnomeui-2.12.0 and GNOME Doc Utils-0.4.4 

58.  gnome-volume-manager-1.5.1
The gnome-volume-manager package contains a volume manager for GNOME. It is a desktop-level daemon that enforces volume-related policy in response to events received from HAL. This is useful for automatic mounting of floppy diskettes, CDROMs and removable storage devices. It can also be used to automatically run a program in response to other hotplug events such as plugging in USB printers or cameras, or inserting DVDs and music CDs. The goal of gnome-volume-manager is to implement all functionality as a state-machine in response to asynchronous events from HAL. It is one component in a larger plan to fully integrate all levels of the Linux system, from the kernel on up through the desktop and its applications.
Required
libgnomeui-2.12.0 and HAL-0.5.4
Optional
Nautilus-2.12.1 

59.  GNOME Games-2.12.1
The GNOME Games package contains games. Starting with GNOME-2.8, the background graphics, artwork and themes for the games are supplied in a separate package. You can download the GNOME Games Extra Data package from
Required
libgnomeui-2.12.0, ScrollKeeper-0.3.14 and librsvg-2.12.7
Optional
Guile-1.6.7 (required to build the AisleRiot solitaire games), Howl and GOB2
The gnibbles game will attempt to start the network game server daemon games-server.py, which requires Python-2.4.2. 

60.  Sound Juicer-2.12.2
The Sound Juicer package contains the sound-juicer  program, a simple and clean CD ripping tool. This is useful for extracting the audio tracks from audio compact discs and converting them into audio files. It can also play the audio tracks directly from the CD, allowing you to preview the CD before ripping it. Sound Juicer is designed to be easy to use, and to work with little user intervention. When you start sound-juicer it will examine the CD in the drive and try to locate information about the audio tracks using the MusicBrainz service.
Required
GNOME Media-2.12.0, GStreamer Plug-ins-0.8.11 and libmusicbrainz-2.1.1 

61.  Totem-1.2.0
The Totem package contains the official movie player of the GNOME desktop environment based on xine-lib or GStreamer. It features a playlist, a full-screen mode, seek and volume controls, as well as keyboard navigation. This is useful for playing any xine-lib or GStreamer supported file, DVD, VCD or digital CD.
Required
GNOME Icon Theme-2.12.1, GNOME Desktop-2.12.1, iso-codes-0.48, libmusicbrainz-2.1.1 and xine Libraries-1.1.0 (default back-end) or GStreamer Plug-ins-0.8.11 (and GStreamer FFmpeg plug-in)
Optional
Nautilus-2.12.1, Mozilla-1.7.11 or Firefox-1.5 (to build the browser plug-in, requires D-BUS-0.50 also), libirman, LIRC, Gromit (required for the telestrator mode) and NvTv Simple
Note: libdvdcss-1.2.9 is a run-time requirement if you wish to play encrypted DVDs 

62.  GDM-2.8.0.5
The GDM package contains GNOME's Display Manager daemon. This is useful for allowing configurable graphical logins.
Required
libgnomeui-2.12.0, ScrollKeeper-0.3.14 and librsvg-2.12.7
Optional
Linux-PAM-0.99.2.0 and tcpwrappers-7.6 

63.  AT SPI-1.6.6
The AT SPI package contains the Assistive Technology Service Provider Interface. This is useful for redirecting UI events to accessible applications and adaptive/assistive technologies.
Required
GAIL-1.8.5 and libbonobo-2.10.1
Optional
GTK-Doc-1.4 

64.  Java Access Bridge-1.4.5
The Java Access Bridge package contains Java components which connect the built-in accessibility support in Java Swing applications to the GNOME Accessibility framework, specifically the Assistive Technology Service Provider Interface (AT-SPI).
Required
AT SPI-1.6.6 and JDK-1.5.0_05 

65.  libgail-gnome-1.1.1
The libgail-gnome package contains the GNOME Accessibility Implementation library additions which implement ATK interfaces for libbonoboui and libgnomeui widgets.
Required
GNOME Panel-2.12.1 and AT SPI-1.6.6 

66.  GNOME Speech-0.3.8
The GNOME Speech package provides a simple general API for producing text-to-speech output. Multiple backends are supported by the GNOME Speech library, but currently only the Festival backend is built by default; the other backends require either Java or proprietary software.
Required
libbonobo-2.10.1
Optional
Java Access Bridge-1.4.5, FreeTTS-1.2.1, Festival, ViaVoice, Eloquence, DECTalk and Theta 

67.  GNOME Magnifier-0.12.2
The GNOME Magnifier includes a screen magnifier, which allows you to zoom in on portions of the desktop. It is expressly designed for users with low vision who wish to use the GNOME desktop.
Required
AT SPI-1.6.6
Optional (For XFree86 Only)
Xdamage (requires FixesExt* then Xfixes then DamageExt)
Ensure you created the xextensions.pc file as shown in the XFree86-4.5.0 instructions. 

68.  Gnopernicus-0.12.0
Gnopernicus enables users with limited vision, or no vision, to use the GNOME desktop and applications effectively. It provides a number of features, including magnification, focus tracking, braille output, automatic screen reading and more.
Required
libgail-gnome-1.1.1, GNOME Speech-0.3.8 and GNOME Magnifier-0.12.2
Optional
GTK-Doc-1.4 and BRLTTY 

69.  GOK-1.0.5
GOK is a dynamic onscreen keyboard. It features Direct Selection, Dwell Selection, Automatic Scanning and Inverse Scanning access methods and includes word completion.
Required
libgnomeui-2.12.0, ScrollKeeper-0.3.14, libwnck-2.12.1, AT SPI-1.6.6 and GNOME Speech-0.3.8
Optional
GTK-Doc-1.4 

GNOME 1.4 Libraries

This section contains GNOME 1.4 libraries, needed by some applications that have not yet been ported to GNOME 2.x. None of these libraries are needed for a GNOME  desktop installation.

70.  ORBit-0.5.17
The ORBit package contains a high-performance CORBA Object Request Broker. This allows programs to send requests and receive replies from other programs.
Required
GLib-1.2.10
Optional
tcpwrappers-7.6 

71.  OAF-0.6.10
The OAF package contains the Object Activation Framework for GNOME.
Required
ORBit-0.5.17, libxml-1.8.17 and popt-1.7-5
Optional
GTK-Doc-1.4 

72.  GNOME Libraries-1.4.2
The GNOME Libraries package contains the GNOME libraries. This is useful as a foundation for the GNOME Desktop and applications.
Required
ORBit-0.5.17, GTK+-1.2.10, Imlib-1.9.15 and Berkeley DB-4.3.29
Optional
Audio File-0.2.6, EsounD-0.2.36 and GTK-Doc-1.4 

73.  GDK Pixel Buffer-0.22.0
The GDK Pixel Buffer package is the GTK+ pixel buffer library.
Required
GTK+-1.2.10
Optional
GNOME Libraries-1.4.2, GTK-Doc-1.4 and DocBook-utils-0.6.14 

74.  GNOME Print-0.37
The GNOME Print package contains the GNOME Printing Architecture, for GNOME 1.4.
Required
GDK Pixel Buffer-0.22.0, GNOME Libraries-1.4.2 and libxml-1.8.17 

75.  Bonobo-1.0.22
The Bonobo package contains a set of language and system independent CORBA interfaces for creating reusable components, controls and compound documents.
Required
OAF-0.6.10 and GNOME Print-0.37
Optional
GTK-Doc-1.4 and DocBook-utils-0.6.14 

76.  GConf-1.0.9
The GConf package contains a configuration database system.
Required
OAF-0.6.10 and popt-1.7-5
Optional
GTK+-1.2.10, Berkeley DB-4.3.29, Guile-1.6.7 and GTK-Doc-1.4 

77.  GNOME Virtual File System-1.0.5
The GNOME Virtual File System  package contains file system libraries.
Required
GNOME MIME Data-2.4.2 and GNOME Libraries-1.4.2
Optional
pkg-config-0.20, OAF-0.6.10, libxml-1.8.17, GConf-1.0.9, Bonobo-1.0.22, OpenSSL-0.9.7i, CDParanoia-III-9.8, GTK-Doc-1.4 and DocBook-utils-0.6.14 

78.  Libglade-0.17
The libglade package contains libraries which allow applications to load Glade interface files at runtime.
Required
libxml-1.8.17 and GTK+-1.2.10
Optional
GNOME Libraries-1.4.2, Bonobo-1.0.22, Python-2.4.2 (to run the libglade-xgettext script) and GTK-Doc-1.4 

79.  GAL-0.24
The GAL package contains library functions that came from Gnumeric  and Evolution. GAL is short for GNOME Application Libs.
Required
GNOME Print-0.37 and libglade-0.17
Optional
GNOME Virtual File System-1.0.5 and GTK-Doc-1.4 

80.  Guppi-0.40.3
The Guppi package contains a Guile scriptable plot library with integrated statistics capabilities.
Required
GNOME Print-0.37 and libglade-0.17
Optional
Bonobo-1.0.22, GTK-Doc-1.4 and DocBook-utils-0.6.14 

81.  Libcapplet-1.5.11
The libcapplet package contains a control panel applet library.
Required
GNOME Libraries-1.4.2
Optional
pkg-config-0.20 

82.  Soup-0.7.11
The Soup package contains a SOAP (Simple Object Access Protocol) implementation in C.
Required
GLib-1.2.10 or GLib-2.8.4, libxml-1.8.17 or libxml2-2.6.22 and popt-1.7-5
Optional
Apache-2.2.0, OpenSSL-0.9.7i or Mozilla-1.7.11 (for the NSS libraries), GTK-Doc-1.4 and DocBook-utils-0.6.14 

83.  Libghttp-1.0.9
The libghttp package contains a GNOME 1.4 HTTP client library.

84.  GtkHTML-1.1.7
The GtkHTML package contains a lightweight HTML rendering/printing/editing engine.
Required
GAL-0.24 and libcapplet-1.5.11
Optional
GConf-1.0.9, Soup-0.7.11, Bonobo-1.0.22, libghttp-1.0.9 and GTK-Doc-1.4 

centos

lfs:/mnt/lfs/sources/gcc-build$ ../gcc-4.0.2/configure --prefix=/tools \
>     --with-local-prefix=/tools --disable-nls --enable-shared \
>     --enable-languages=c
*** This configuration is not supported in the following subdirectories:
     target-libada target-libstdc++-v3 target-libgfortran target-libffi target-boehm-gc target-zlib target-libjava zlib fastjar target-libobjc
    (Any other directories should still work fine.)
glibc 5
lfs:/mnt/lfs/sources/glibc-build$ make -k check >glibc-check-log 2>&1
lfs:/mnt/lfs/sources/glibc-build$ vi glibc-check-log
lfs:/mnt/lfs/sources/glibc-build$ grep Error glibc-check-log
make[2]: [/mnt/lfs/sources/glibc-build/posix/annexc.out] Error 1 (ignored)
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-eintr2.out] Error 1
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-eintr3.out] Error 1
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-eintr5.out] Error 1
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-tsd5.out] Error 1
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-exit2.out] Error 1
make[2]: *** [/mnt/lfs/sources/glibc-build/nptl/tst-exit3.out] Error 1
make[1]: *** [nptl/tests] Error 2
make[2]: *** [/mnt/lfs/sources/glibc-build/rt/tst-timer2.out] Error 1
make[1]: *** [rt/tests] Error 2
make: *** [check] Error 2

dejagnu-1.4.4
lfs:/mnt/lfs/sources/dejagnu-1.4.4$ make check
Making check in doc
make[1]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4/doc'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4/doc'
make[1]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4'
make  check-DEJAGNU
make[2]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4'
cd testsuite ; make check
make[3]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
Making check in libdejagnu
make[4]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite/libdejagnu'
if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"dejagnu\" -DVERSION=\"1.4.4\"  -I. -I.    -I../.. -g -g -O2 -MT unit.o -MD -MP -MF ".deps/unit.Tpo" \
  -c -o unit.o `test -f 'unit.cc' || echo './'`unit.cc; \
then mv -f ".deps/unit.Tpo" ".deps/unit.Po"; \
else rm -f ".deps/unit.Tpo"; exit 1; \
fi
g++ -I../.. -g -g -O2   -o unit  unit.o
make[4]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite/libdejagnu'make[4]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
Nothing to be done for all
make  check-DEJAGNU
make[5]: Entering directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
Making a new site.exp file...
srcdir=`CDPATH="${ZSH_VERSION+.}:" && cd . && pwd`; export srcdir; \
EXPECT=expect; export EXPECT; \
runtest=` if [ -f ../runtest ] ; then echo ../runtest; else echo "ERROR: runtest not found" ; exit 1; fi`; \
if /bin/sh -c "$runtest --version" > /dev/null 2>&1; then \
  l='dejagnu'; for tool in $l; do \
    $runtest  --srcdir $srcdir ; \
  done; \
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi
WARNING: Couldn't find the global config file.
WARNING: No tool specified
Test Run By lfs on Sat Jan 21 22:02:28 2006
Native configuration is i686-pc-linux-gnu

                ===  tests ===

Schedule of variations:
    unix

Running target unix
Using /mnt/lfs/sources/dejagnu-1.4.4/testsuite/../config/base-config.exp as tool-and-target-specific interface file.
Using /mnt/lfs/sources/dejagnu-1.4.4/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /mnt/lfs/sources/dejagnu-1.4.4/testsuite/libdejagnu/tunit.exp ...
FAIL: Pass message
FAIL: Fail message
FAIL: Untested message
FAIL: Unresolved message
Running /mnt/lfs/sources/dejagnu-1.4.4/testsuite/runtest.all/libs.exp ...
Running /mnt/lfs/sources/dejagnu-1.4.4/testsuite/runtest.all/options.exp ...
Running /mnt/lfs/sources/dejagnu-1.4.4/testsuite/runtest.all/stats-sub.exp ...
Running /mnt/lfs/sources/dejagnu-1.4.4/testsuite/runtest.all/stats.exp ...

                ===  Summary ===

# of expected passes            59
# of unexpected failures        4
make[5]: *** [check-DEJAGNU] Error 1
make[5]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
make[4]: *** [check-am] Error 2
make[4]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
make[3]: *** [check-recursive] Error 1
make[3]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4/testsuite'
make[2]: *** [check-DEJAGNU] Error 2
make[2]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory `/mnt/lfs/sources/dejagnu-1.4.4'
make: *** [check-recursive] Error 1

ID
Password
Join
Put not your trust in money, but put your money in trust.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2006-01-22 08:31:08
Processing time 0.0176 sec