Jump to content

LFS: Cross-compile Temporary Tools: Difference between revisions

From Haidhi Wiki
Created page with "= m4-1.4.19 = <syntaxhighlight lang=bash> ./configure --prefix=/usr \ --host=$LFS_TGT \ --build=$(build-aux/config.guess) make make DESTDIR=$LFS install </syntaxhighlight> = ncurses-6.5 = <syntaxhighlight lang=bash> mkdir build pushd build ../configure AWK=gawk make -C include make -C progs tic popd ./configure --prefix=/usr \ --host=$LFS_TGT \ --build=$(./config.guess) \..."
 
No edit summary
 
Line 6: Line 6:


make
make
make DESTDIR=$LFS install
make DESTDIR=$LFS install
</syntaxhighlight>
</syntaxhighlight>
Line 33: Line 32:


make
make
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
ln -sv libncursesw.so $LFS/usr/lib/libncurses.so
ln -sv libncursesw.so $LFS/usr/lib/libncurses.so
Line 47: Line 45:
             --without-bash-malloc
             --without-bash-malloc


make  
make
 
make DESTDIR=$LFS install
make DESTDIR=$LFS install
ln -sv bash $LFS/bin/sh
ln -sv bash $LFS/bin/sh
</syntaxhighlight>
</syntaxhighlight>
Line 63: Line 59:


make  
make  
make DESTDIR=$LFS install
make DESTDIR=$LFS install
mv -v $LFS/usr/bin/chroot $LFS/usr/sbin
mv -v $LFS/usr/bin/chroot $LFS/usr/sbin
mkdir -pv $LFS/usr/share/man/man8
mkdir -pv $LFS/usr/share/man/man8
Line 80: Line 74:


make  
make  
make DESTDIR=$LFS install
make DESTDIR=$LFS install
</syntaxhighlight>
</syntaxhighlight>
Line 98: Line 91:


make FILE_COMPILE=$(pwd)/build/src/file
make FILE_COMPILE=$(pwd)/build/src/file
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/libmagic.la
</syntaxhighlight>
= findutils-4.10.0 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr                  \
            --localstatedir=/var/lib/locate \
            --host=$LFS_TGT                \
            --build=$(build-aux/config.guess)
make
make DESTDIR=$LFS install
</syntaxhighlight>
= gawk-5.3.2 =
<syntaxhighlight lang=bash>
sed -i 's/extras//' Makefile.in
./configure --prefix=/usr  \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)
make
make DESTDIR=$LFS install
</syntaxhighlight>
= grep-3.12 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr  \
            --host=$LFS_TGT \
            --build=$(./build-aux/config.guess)
make
make DESTDIR=$LFS install
</syntaxhighlight>
= gzip-1.14 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr --host=$LFS_TGT
make
make DESTDIR=$LFS install
</syntaxhighlight>
= make-4.4.1 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr  \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)


make
make DESTDIR=$LFS install
make DESTDIR=$LFS install
</syntaxhighlight>


rm -v $LFS/usr/lib/libmagic.la
= patch-2.8 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr  \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)
 
make
make DESTDIR=$LFS install
</syntaxhighlight>
 
= sed-4.9 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr  \
            --host=$LFS_TGT \
            --build=$(./build-aux/config.guess)
 
make
make DESTDIR=$LFS install
</syntaxhighlight>
 
= tar-1.35 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr                    \
            --host=$LFS_TGT                  \
            --build=$(build-aux/config.guess)
 
make
make DESTDIR=$LFS install
</syntaxhighlight>
 
= xz-5.8.1 =
<syntaxhighlight lang=bash>
./configure --prefix=/usr                    \
            --host=$LFS_TGT                  \
            --build=$(build-aux/config.guess) \
            --disable-static                  \
            --docdir=/usr/share/doc/xz-5.8.1
 
make
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/liblzma.la
</syntaxhighlight>
 
= binutils-2.44 - Pass 2 =
<syntaxhighlight lang=bash>
sed '6031s/$add_dir//' -i ltmain.sh
 
mkdir -v build
cd      build
 
../configure                  \
    --prefix=/usr              \
    --build=$(../config.guess) \
    --host=$LFS_TGT            \
    --disable-nls              \
    --enable-shared            \
    --enable-gprofng=no        \
    --disable-werror          \
    --enable-64-bit-bfd        \
    --enable-new-dtags        \
    --enable-default-hash-style=gnu
 
make
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes,sframe}.{a,la}
</syntaxhighlight>
 
= GCC-14.2.0 - Pass 2 =
<syntaxhighlight lang=bash>
tar -xf ../mpfr-4.2.2.tar.xz
mv -v mpfr-4.2.2 mpfr
tar -xf ../gmp-6.3.0.tar.xz
mv -v gmp-6.3.0 gmp
tar -xf ../mpc-1.3.1.tar.gz
mv -v mpc-1.3.1 mpc
 
case $(uname -m) in
  x86_64)
    sed -e '/m64=/s/lib64/lib/' \
        -i.orig gcc/config/i386/t-linux64
  ;;
esac
 
sed '/thread_header =/s/@.*@/gthr-posix.h/' \
    -i libgcc/Makefile.in libstdc++-v3/include/Makefile.in
 
mkdir -v build
cd      build
 
../configure                                      \
    --build=$(../config.guess)                    \
    --host=$LFS_TGT                                \
    --target=$LFS_TGT                              \
    LDFLAGS_FOR_TARGET=-L$PWD/$LFS_TGT/libgcc      \
    --prefix=/usr                                  \
    --with-build-sysroot=$LFS                      \
    --enable-default-pie                          \
    --enable-default-ssp                          \
    --disable-nls                                  \
    --disable-multilib                            \
    --disable-libatomic                            \
    --disable-libgomp                              \
    --disable-libquadmath                          \
    --disable-libsanitizer                        \
    --disable-libssp                              \
    --disable-libvtv                              \
    --enable-languages=c,c++
 
make
make DESTDIR=$LFS install
ln -sv gcc $LFS/usr/bin/cc
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 13:23, 16 April 2025

m4-1.4.19

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)

make
make DESTDIR=$LFS install

ncurses-6.5

mkdir build
pushd build
  ../configure AWK=gawk
  make -C include
  make -C progs tic
popd

./configure --prefix=/usr                \
            --host=$LFS_TGT              \
            --build=$(./config.guess)    \
            --mandir=/usr/share/man      \
            --with-manpage-format=normal \
            --with-shared                \
            --without-normal             \
            --with-cxx-shared            \
            --without-debug              \
            --without-ada                \
            --disable-stripping          \
            AWK=gawk

make
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
ln -sv libncursesw.so $LFS/usr/lib/libncurses.so
sed -e 's/^#if.*XOPEN.*$/#if 1/' \
    -i $LFS/usr/include/curses.h

bash-5.2.37

./configure --prefix=/usr                      \
            --build=$(sh support/config.guess) \
            --host=$LFS_TGT                    \
            --without-bash-malloc

make
make DESTDIR=$LFS install
ln -sv bash $LFS/bin/sh

coreutils-9.7

./configure --prefix=/usr                     \
            --host=$LFS_TGT                   \
            --build=$(build-aux/config.guess) \
            --enable-install-program=hostname \
            --enable-no-install-program=kill,uptime

make 
make DESTDIR=$LFS install
mv -v $LFS/usr/bin/chroot $LFS/usr/sbin
mkdir -pv $LFS/usr/share/man/man8
mv -v $LFS/usr/share/man/man1/chroot.1 $LFS/usr/share/man/man8/chroot.8
sed -i 's/"1"/"8"/' $LFS/usr/share/man/man8/chroot.8

diffutils-3.12

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            gl_cv_func_strcasecmp_works=y \
            --build=$(./build-aux/config.guess)

make 
make DESTDIR=$LFS install

file-5.46

mkdir build
pushd build
  ../configure --disable-bzlib      \
               --disable-libseccomp \
               --disable-xzlib      \
               --disable-zlib
  make
popd

./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)

make FILE_COMPILE=$(pwd)/build/src/file
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/libmagic.la

findutils-4.10.0

./configure --prefix=/usr                   \
            --localstatedir=/var/lib/locate \
            --host=$LFS_TGT                 \
            --build=$(build-aux/config.guess)

make 
make DESTDIR=$LFS install

gawk-5.3.2

sed -i 's/extras//' Makefile.in 

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)

make 
make DESTDIR=$LFS install

grep-3.12

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(./build-aux/config.guess)

make 
make DESTDIR=$LFS install

gzip-1.14

./configure --prefix=/usr --host=$LFS_TGT
make
make DESTDIR=$LFS install

make-4.4.1

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)

make 
make DESTDIR=$LFS install

patch-2.8

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(build-aux/config.guess)

make 
make DESTDIR=$LFS install

sed-4.9

./configure --prefix=/usr   \
            --host=$LFS_TGT \
            --build=$(./build-aux/config.guess) 

make
make DESTDIR=$LFS install

tar-1.35

./configure --prefix=/usr                     \
            --host=$LFS_TGT                   \
            --build=$(build-aux/config.guess)

make
make DESTDIR=$LFS install

xz-5.8.1

./configure --prefix=/usr                     \
            --host=$LFS_TGT                   \
            --build=$(build-aux/config.guess) \
            --disable-static                  \
            --docdir=/usr/share/doc/xz-5.8.1

make
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/liblzma.la

binutils-2.44 - Pass 2

sed '6031s/$add_dir//' -i ltmain.sh

mkdir -v build
cd       build

../configure                   \
    --prefix=/usr              \
    --build=$(../config.guess) \
    --host=$LFS_TGT            \
    --disable-nls              \
    --enable-shared            \
    --enable-gprofng=no        \
    --disable-werror           \
    --enable-64-bit-bfd        \
    --enable-new-dtags         \
    --enable-default-hash-style=gnu

make
make DESTDIR=$LFS install
rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes,sframe}.{a,la}

GCC-14.2.0 - Pass 2

tar -xf ../mpfr-4.2.2.tar.xz
mv -v mpfr-4.2.2 mpfr
tar -xf ../gmp-6.3.0.tar.xz
mv -v gmp-6.3.0 gmp
tar -xf ../mpc-1.3.1.tar.gz
mv -v mpc-1.3.1 mpc 

case $(uname -m) in
  x86_64)
    sed -e '/m64=/s/lib64/lib/' \
        -i.orig gcc/config/i386/t-linux64
  ;;
esac

sed '/thread_header =/s/@.*@/gthr-posix.h/' \
    -i libgcc/Makefile.in libstdc++-v3/include/Makefile.in

mkdir -v build
cd       build

../configure                                       \
    --build=$(../config.guess)                     \
    --host=$LFS_TGT                                \
    --target=$LFS_TGT                              \
    LDFLAGS_FOR_TARGET=-L$PWD/$LFS_TGT/libgcc      \
    --prefix=/usr                                  \
    --with-build-sysroot=$LFS                      \
    --enable-default-pie                           \
    --enable-default-ssp                           \
    --disable-nls                                  \
    --disable-multilib                             \
    --disable-libatomic                            \
    --disable-libgomp                              \
    --disable-libquadmath                          \
    --disable-libsanitizer                         \
    --disable-libssp                               \
    --disable-libvtv                               \
    --enable-languages=c,c++

make
make DESTDIR=$LFS install
ln -sv gcc $LFS/usr/bin/cc