OSDN Git Service

Remove unnessary files
authorHe Chenlan <210hcl@gmail.com>
Mon, 18 Jan 2021 08:37:41 +0000 (16:37 +0800)
committerHe Chenlan <210hcl@gmail.com>
Mon, 18 Jan 2021 08:37:41 +0000 (16:37 +0800)
LFS手册持续更新.txt [deleted file]
spec打包规范.md [deleted file]
todo.md [deleted file]

diff --git a/LFS手册持续更新.txt b/LFS手册持续更新.txt
deleted file mode 100644 (file)
index 03e888c..0000000
+++ /dev/null
@@ -1,886 +0,0 @@
-SUReLinux项目构建手册(内部文件,不要外传,参数说明见LFS官方文档)\r
-第一章 准备系统\r
-1.1准备工作\r
-本文假定中途不会关机,推荐使用虚拟机挂起功能。\r
-作者在VMWare Workstation 15.5下测试。(请不要使用virtualbox,virtualbox的CPU利用率较低,在支持超线程的CPU上面甚至低于hyper-v。qemu存在桥接网卡的问题,方案自行检索。hyper-v, xen未测试)\r
-内存推荐4G,最少2G, swap最少4G。硬盘80G(完整版内核需要15G以上空间编译,所以必须要这么大硬盘,使用虚拟机的话,直接创建80G以及以上硬盘即可),处理器能好点用好点的,只要是64位处理器就行。\r
-LFS系统宿主机要求(按照LFS要求筛选之后):OpenSUSE(leap, tumbleweeded均可,推荐)\r
-mageia(推荐)\r
-ubuntu/debian/kali(debian与kali请用su - root代替su,并请运行sudo dpkg-reconfigure bash,将默认shell从dash切为bash)\r
-archlinux/manjaro(archlinux vmware剪贴板异常,manjaro安装gtkmm gtkmm3后没问题)\r
-gentoo/funtoo(vmware剪贴板异常),debian/kali(普通用户的su请改为su - root)\r
-已知存在问题的不符合要求的:fedora/centos/rhel(yacc这边不一致,fedora可用opensuse的bison安装包代替),alpine(使用的是musl,不是glibc),solus(多项不符合要求),WSL(没有lsblk,无法chroot)。\r
-另外请自行准备ocserv服务器/代理服务器,aria2c或者wget\r
-使用如下代码检测是否安装全必要的软件\r
-cat > version-check.sh << "EOF"\r
-#!/bin/bash\r
-# Simple script to list version numbers of critical development tools\r
-export LC_ALL=C\r
-bash --version | head -n1 | cut -d" " -f2-4\r
-MYSH=$(readlink -f /bin/sh)\r
-echo "/bin/sh -> $MYSH"\r
-echo $MYSH | grep -q bash || echo "ERROR: /bin/sh does not point to bash"\r
-unset MYSH\r
-\r
-echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-\r
-bison --version | head -n1\r
-\r
-if [ -h /usr/bin/yacc ]; then\r
-  echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";\r
-elif [ -x /usr/bin/yacc ]; then\r
-  echo yacc is `/usr/bin/yacc --version | head -n1`\r
-else\r
-  echo "yacc not found"\r
-fi\r
-\r
-bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-\r
-echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2\r
-diff --version | head -n1\r
-find --version | head -n1\r
-gawk --version | head -n1\r
-echo -n "pkg-config "; pkg-config --version\r
-if [ -h /usr/bin/awk ]; then\r
-  echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";\r
-elif [ -x /usr/bin/awk ]; then\r
-  echo awk is `/usr/bin/awk --version | head -n1`\r
-else\r
-  echo "awk not found"\r
-fi\r
-\r
-gcc --version | head -n1\r
-g++ --version | head -n1\r
-ldd --version | head -n1 | cut -d" " -f2-  # glibc version\r
-grep --version | head -n1\r
-gzip --version | head -n1\r
-cat /proc/version\r
-m4 --version | head -n1\r
-make --version | head -n1\r
-patch --version | head -n1\r
-echo Perl `perl -V:version`\r
-python3 --version\r
-sed --version | head -n1\r
-tar --version | head -n1\r
-makeinfo --version | head -n1  # texinfo version\r
-xz --version | head -n1\r
-\r
-echo 'int main(){}' > dummy.c && g++ -o dummy dummy.c\r
-if [ -x dummy ]\r
-  then echo "g++ compilation OK";\r
-  else echo "g++ compilation failed"; fi\r
-rm -f dummy.c dummy\r
-EOF\r
-bash version-check.sh\r
-\r
-额外,装qemu方便测试,lzip用于ed源代码解包。\r
-1.2创建变量\r
-export LFS=/mnt/lfs\r
-使用如下命令确认变量(一定要在root账户下再确认一遍)\r
-echo $LFS\r
-1.3准备硬盘\r
-这里选用和LFS略有区别的方案,采用的是loop法,这里不做详细介绍。主要是为了方便测试。\r
-dd bs=1G count=60 if=/dev/zero of=60.img #划分60G的img空盘作为虚拟硬盘\r
-sudo cfdisk ~/60.img #dos分区,一个就行\r
-sudo kpartx -av ~/60.img #让img变成系统分区\r
-mkfs.ext4 /dev/mapper/loop0p1 #格式化,linux内核默认兼容ext4,这里请切换为su,后续将维持在su下,ubuntu可能为loop3,自行用lsblk确认下\r
-1.4挂载分区\r
-mkdir -pv $LFS\r
-mount -v -t ext4 /dev/mapper/loop0p1 $LFS\r
-请使用lsblk确认挂载成功\r
-1.5下包\r
-几点说明:①GNU,CPAN镜像用的是上海交通大学镜像,kernel.org为中科大镜像,openssh为清华大学镜像\r
-②内核为opensuse提供的定制的4.19LTS内核\r
-③从LFS中被删除的包:iana-etc, gdbm, gperf, expat, XML::Parser, intltool, libffi, python3(glibc编译需要py3, 但chroot后不安装), ninja, meson, check, kbd, libpipeline, vim, sysklogd, pkg-config, sysvinit, 加入的包:ed, nano, dhcpcd, openssh, wget, pkgconf, openrc\r
-④OpenRC已加入,脚本还需重写\r
-⑤源代码ed是用lzip压缩的,请自行安装lzip,在chroot之前把ed解包,lzip暂不编译\r
-⑥file如果不好下载可以改为https://github.com/file/file/archive/FILE5_37.tar.gz, dhcpcd不好下可以改为https://github.com/rsmarples/dhcpcd/archive/dhcpcd-8.0.6.tar.gz\r
-mkdir -pv $LFS/sources\r
-chmod -v a+wt $LFS/sources #可选,方便非root用户复制源代码包到文件夹\r
-cat > wgetlist << "EOF"\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/binutils/binutils-2.32.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/gmp/gmp-6.1.2.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/mpfr/mpfr-4.0.2.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/mpc/mpc-1.1.0.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/m4/m4-1.4.18.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/glibc/glibc-2.30.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/dejagnu/dejagnu-1.6.2.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/ncurses/ncurses-6.1.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/bash/bash-5.0.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/bison/bison-3.4.1.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/coreutils/coreutils-8.31.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/diffutils/diffutils-3.7.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/findutils/findutils-4.7.0.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/gawk/gawk-5.0.1.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/gettext/gettext-0.20.1.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/grep/grep-3.3.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/gzip/gzip-1.10.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/make/make-4.2.1.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/patch/patch-2.7.6.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/sed/sed-4.7.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/tar/tar-1.32.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/bc/bc-1.07.1.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/texinfo/texinfo-6.6.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/readline/readline-8.0.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/libtool/libtool-2.4.6.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/inetutils/inetutils-1.9.4.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/autoconf/autoconf-2.69.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/automake/automake-1.16.1.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/groff/groff-1.22.4.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/grub/grub-2.04.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/nano/nano-4.4.tar.xz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/wget/wget-1.20.3.tar.gz\r
-https://mirrors.sjtug.sjtu.edu.cn/gnu/ed/ed-1.15.tar.lz\r
-https://mirrors.sjtug.sjtu.edu.cn/cpan/src/5.0/perl-5.30.0.tar.gz\r
-https://mirrors.tuna.tsinghua.edu.cn/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gz\r
-https://mirrors.ustc.edu.cn/kernel.org/linux/utils/util-linux/v2.34/util-linux-2.34.tar.xz\r
-https://mirrors.ustc.edu.cn/kernel.org/linux/libs/security/linux-privs/libcap2/libcap-2.27.tar.xz\r
-https://mirrors.ustc.edu.cn/kernel.org/linux/utils/net/iproute2/iproute2-5.2.0.tar.xz\r
-https://download.savannah.nongnu.org/releases/acl/acl-2.2.53.tar.gz\r
-https://download.savannah.nongnu.org/releases/attr/attr-2.4.48.tar.gz\r
-https://prdownloads.sourceforge.net/psmisc/psmisc/psmisc-23.2.tar.xz\r
-https://prdownloads.sourceforge.net/tcl/Tcl/8.6.9/tcl8.6.9-src.tar.gz\r
-https://prdownloads.sourceforge.net/expect/Expect/5.45.4/expect5.45.4.tar.gz\r
-https://prdownloads.sourceforge.net/libpng/zlib-1.2.11.tar.xz\r
-https://prdownloads.sourceforge.net/procps-ng/Production/procps-ng-3.3.15.tar.xz\r
-https://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs/v1.45.3/e2fsprogs-1.45.3.tar.gz\r
-https://sourceware.org/elfutils/ftp/elfutils-latest.tar.bz2\r
-https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz\r
-https://github.com/openSUSE/kernel/archive/v4.19.75.tar.gz\r
-https://github.com/shadow-maint/shadow/releases/download/4.7/shadow-4.7.tar.xz\r
-https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz\r
-https://github.com/OpenRC/openrc/archive/0.42.1.tar.gz\r
-https://distfiles.dereferenced.org/pkgconf/pkgconf-1.1.0.tar.xz\r
-https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz\r
-https://data.iana.org/time-zones/releases/tzdata2019c.tar.gz\r
-https://tukaani.org/xz/xz-5.2.4.tar.xz\r
-http://www.greenwoodsoftware.com/less/less-551.tar.gz\r
-https://roy.marples.name/downloads/dhcpcd/dhcpcd-8.0.6.tar.xz\r
-https://www.openssl.org/source/openssl-1.1.1c.tar.gz\r
-https://dev.gentoo.org/~blueness/eudev/eudev-3.2.8.tar.gz\r
-ftp://ftp.astron.com/pub/file/file-5.37.tar.gz\r
-EOF\r
-wget --input-file=wgetlist --continue --directory-prefix=$LFS/sources\r
-mv $LFS/sources/v4.19.75.tar.gz $LFS/sources/kernel-4.19.75.tar.gz #wget下载的文件名和浏览器不统一,修正下\r
-mv $LFS/sources/0.42.1.tar.gz $LFS/sources/openrc-0.42.1.tar.gz\r
-或者\r
-aria2c -c -i wgetlist -d $LFS/sources #可以添加-j16和-x16提高速度\r
-1.6创建目录 $LFS/tools\r
-mkdir -v $LFS/tools\r
-ln -sv $LFS/tools /  #创建 /tools 的符号链接。将其指向 SURE 分区中新建的目录。\r
-1.7添加 LFS 用户\r
-groupadd lfs\r
-useradd -s /bin/bash -g lfs -m -k /dev/null lfs\r
-passwd lfs\r
-chown -v lfs $LFS/tools\r
-chown -v lfs $LFS/sources\r
-su - lfs\r
-1.8设置环境\r
-cat > ~/.bash_profile << "EOF"\r
-exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash\r
-EOF\r
-cat > ~/.bashrc << "EOF"\r
-set +h\r
-umask 022\r
-LFS=/mnt/lfs\r
-LC_ALL=POSIX\r
-LFS_TGT=$(uname -m)-lfs-linux-gnu\r
-PATH=/tools/bin:/bin:/usr/bin\r
-export LFS LC_ALL LFS_TGT PATH\r
-EOF\r
-source ~/.bash_profile\r
-1.9解包说明与编译说明\r
-在sources里面tar xvf(v可以省略)文件夹,cd进去。编译完成,删除解包的文件夹\r
-自行在make后面-jx x为电脑线程数,可以额外+1,gcc,内核等SBU非常大的可以考虑x-1\r
-第二章 构建临时系统(参数请查阅LFS手册)\r
-2.1 Binutils pass1(链接器与汇编器等)\r
-mkdir -v build\r
-cd       build\r
-../configure --prefix=/tools            \\r
-             --with-sysroot=$LFS        \\r
-             --with-lib-path=/tools/lib \\r
-             --target=$LFS_TGT          \\r
-             --disable-nls              \\r
-             --disable-werror\r
-make -j$(nproc --all)\r
-case $(uname -m) in\r
-  x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;\r
-esac\r
-make install\r
-cd ../..\r
-2.2 gcc pass1\r
-tar xf ../mpfr-*.tar.xz\r
-mv -v mpfr-* mpfr\r
-tar xf ../gmp-*.tar.xz\r
-mv -v gmp-* gmp\r
-tar xf ../mpc-*.tar.gz\r
-mv -v mpc-* mpc\r
-for file in gcc/config/{linux,i386/linux{,64}}.h\r
-do\r
-  cp -uv $file{,.orig}\r
-  sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \\r
-      -e 's@/usr@/tools@g' $file.orig > $file\r
-  echo '\r
-#undef STANDARD_STARTFILE_PREFIX_1\r
-#undef STANDARD_STARTFILE_PREFIX_2\r
-#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"\r
-#define STANDARD_STARTFILE_PREFIX_2 ""' >> $file\r
-  touch $file.orig\r
-done\r
-case $(uname -m) in\r
-  x86_64)\r
-    sed -e '/m64=/s/lib64/lib/' \\r
-        -i.orig gcc/config/i386/t-linux64\r
- ;;\r
-esac\r
-mkdir -v build\r
-cd       build\r
-../configure                                       \\r
-    --target=$LFS_TGT                              \\r
-    --prefix=/tools                                \\r
-    --with-glibc-version=2.11                      \\r
-    --with-sysroot=$LFS                            \\r
-    --with-newlib                                  \\r
-    --without-headers                              \\r
-    --with-local-prefix=/tools                     \\r
-    --with-native-system-header-dir=/tools/include \\r
-    --disable-nls                                  \\r
-    --disable-shared                               \\r
-    --disable-multilib                             \\r
-    --disable-decimal-float                        \\r
-    --disable-threads                              \\r
-    --disable-libatomic                            \\r
-    --disable-libgomp                              \\r
-    --disable-libquadmath                          \\r
-    --disable-libssp                               \\r
-    --disable-libvtv                               \\r
-    --disable-libstdcxx                            \\r
-    --enable-languages=c,c++\r
-make -j$(nproc --all)\r
-make install\r
-cd ../..\r
-2.3 kernel header\r
-make mrproper\r
-make INSTALL_HDR_PATH=dest headers_install\r
-cp -r dest/include/* /tools/include\r
-cd ..\r
-2.4 glibc(C函数库)\r
-mkdir -v build\r
-cd build\r
-../configure                             \\r
-      --prefix=/tools                    \\r
-      --host=$LFS_TGT                    \\r
-      --build=$(../scripts/config.guess) \\r
-      --enable-kernel=3.2                \\r
-      --with-headers=/tools/include\r
-make -j$(nproc --all)\r
-make install\r
-请注意在此处进行一次测试\r
-echo 'int main(){}' > dummy.c\r
-$LFS_TGT-gcc dummy.c\r
-readelf -l a.out | grep ': /tools'\r
-如果输出[Requesting program interpreter: /tools/lib64/ld-linux-x86-64.so.2]则成功,成功后执行\r
-rm -v dummy.c a.out\r
-cd ../..\r
-2.5 libstdc++(标准C++库,包含在gcc里面,解包gcc)\r
-mkdir -v build\r
-cd build\r
-GCCVER=9.2.0\r
-../libstdc++-v3/configure           \\r
-    --host=$LFS_TGT                 \\r
-    --prefix=/tools                 \\r
-    --disable-multilib              \\r
-    --disable-nls                   \\r
-    --disable-libstdcxx-threads     \\r
-    --disable-libstdcxx-pch         \\r
-    --with-gxx-include-dir=/tools/$LFS_TGT/include/c++/${GCCVER}\r
-make -j$(nproc --all)\r
-make install\r
-2.6 Binutils pass2\r
-mkdir -v build\r
-cd build\r
-CC=$LFS_TGT-gcc                \\r
-AR=$LFS_TGT-ar                 \\r
-RANLIB=$LFS_TGT-ranlib         \\r
-../configure                   \\r
-    --prefix=/tools            \\r
-    --disable-nls              \\r
-    --disable-werror           \\r
-    --with-lib-path=/tools/lib \\r
-    --with-sysroot\r
-make -j$(nproc --all)\r
-make install\r
-make -C ld clean\r
-make -C ld LIB_PATH=/usr/lib:/lib\r
-cp -v ld/ld-new /tools/bin\r
-2.7 gcc pass2\r
-cat gcc/limitx.h gcc/glimits.h gcc/limity.h > \\r
-  `dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/include-fixed/limits.h\r
-for file in gcc/config/{linux,i386/linux{,64}}.h\r
-do\r
-  cp -uv $file{,.orig}\r
-  sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \\r
-      -e 's@/usr@/tools@g' $file.orig > $file\r
-  echo '\r
-#undef STANDARD_STARTFILE_PREFIX_1\r
-#undef STANDARD_STARTFILE_PREFIX_2\r
-#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"\r
-#define STANDARD_STARTFILE_PREFIX_2 ""' >> $file\r
-  touch $file.orig\r
-done\r
-case $(uname -m) in\r
-  x86_64)\r
-    sed -e '/m64=/s/lib64/lib/' \\r
-        -i.orig gcc/config/i386/t-linux64\r
-  ;;\r
-esac\r
-tar xvf ../mpfr-*.tar.xz\r
-mv -v mpfr-* mpfr\r
-tar xvf ../gmp-*.tar.xz\r
-mv -v gmp-* gmp\r
-tar xvf ../mpc-*.tar.gz\r
-mv -v mpc-* mpc\r
-mkdir -v build\r
-cd build\r
-CC=$LFS_TGT-gcc                                    \\r
-CXX=$LFS_TGT-g++                                   \\r
-AR=$LFS_TGT-ar                                     \\r
-RANLIB=$LFS_TGT-ranlib                             \\r
-../configure                                       \\r
-    --prefix=/tools                                \\r
-    --with-local-prefix=/tools                     \\r
-    --with-native-system-header-dir=/tools/include \\r
-    --enable-languages=c,c++                       \\r
-    --disable-libstdcxx-pch                        \\r
-    --disable-multilib                             \\r
-    --disable-bootstrap                            \\r
-    --disable-libgomp\r
-make -j$(nproc --all)\r
-make install\r
-ln -sv gcc /tools/bin/cc\r
-请注意在此处进行一次测试\r
-echo 'int main(){}' > dummy.c\r
-cc dummy.c\r
-readelf -l a.out | grep ': /tools'\r
-如果输出[Requesting program interpreter: /tools/lib64/ld-linux-x86-64.so.2]则成功,成功后执行\r
-rm -v dummy.c a.out\r
-cd ../..\r
-2.8 tcl(测试套件1)\r
-cd unix\r
-./configure --prefix=/tools\r
-make -j$(nproc --all)\r
-make install\r
-chmod u+w /tools/lib64/libtcl8.6.so\r
-make install-private-headers\r
-ln -sv tclsh8.6 /tools/bin/tclsh\r
-cd ../..\r
-2.9 expect(测试套件2)\r
-cp -v configure{,.orig}\r
-sed 's:/usr/local/bin:/bin:' configure.orig > configure\r
-./configure --prefix=/tools       \\r
-            --with-tcl=/tools/lib \\r
-            --with-tclinclude=/tools/include\r
-make -j$(nproc --all)\r
-make SCRIPTS="" install\r
-cd ..\r
-2.10 dejagnu(测试套件3)\r
-./configure --prefix=/tools\r
-make install\r
-cd ..\r
-2.11 m4\r
-sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c\r
-echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h\r
-./configure --prefix=/tools\r
-make -j$(nproc --all)\r
-make install\r
-cd ..\r
-2.12 ncurses\r
-sed -i s/mawk// configure\r
-./configure --prefix=/tools \\r
-            --with-shared   \\r
-            --without-debug \\r
-            --without-ada   \\r
-            --enable-widec  \\r
-            --enable-overwrite\r
-make -j$(nproc --all)\r
-make install\r
-ln -s libncursesw.so /tools/lib/libncurses.so\r
-cd ..\r
-2.13 bash\r
-./configure --prefix=/tools --without-bash-malloc\r
-make -j$(nproc --all)\r
-make install\r
-ln -sv bash /tools/bin/sh\r
-cd ..\r
-2.14 bison\r
-./configure --prefix=/tools\r
-make -j$(nproc --all)\r
-make install\r
-cd ..\r
-2.15 coreutils (系统基本工具)\r
-./configure --prefix=/tools --enable-install-program=hostname\r
-make -j$(nproc --all)\r
-make install\r
-cd ..\r
-2.16-2.19 diffutils file findutils gawk\r
-for package in diffutils-3.7 file-5.37 findutils-4.7.0 gawk-5.0.1; do\r
-    tar xf "${package}".tar.*\r
-    cd "${package}" || continue\r
-    ./configure --prefix=/tools\r
-    make -j$(nproc --all)\r
-    make install\r
-    cd $LFS/sources/ || break\r
-    rm -rvf "${package}"\r
-done\r
-2.20 gettext\r
-./configure --prefix=/tools --disable-shared\r
-make -j$(nproc --all)\r
-cp -v gettext-tools/src/{msgfmt,msgmerge,xgettext} /tools/bin\r
-cd ..\r
-2.21-2.22 grep gzip\r
-for package in grep-3.3 gzip-1.10; do\r
-    tar xvf "${package}".tar.*\r
-    cd "${package}" || continue\r
-    ./configure --prefix=/tools\r
-    make -j$(nproc --all)\r
-    make install\r
-    cd $LFS/sources/ || break\r
-    rm -rvf "${package}"\r
-done\r
-2.23 make\r
-sed -i '211,217 d; 219,229 d; 232 d' glob/glob.c\r
-./configure --prefix=/tools --without-guile\r
-make -j$(nproc --all)\r
-make install\r
-cd ..\r
-2.24 patch\r
-./configure --prefix=/tools\r
-make -j$(nproc --all)\r
-make install\r
-cd ..\r
-2.25 perl\r
-PERLVER=5.30.0\r
-sh Configure -des -Dprefix=/tools -Dlibs=-lm -Uloclibpth -Ulocincpth\r
-make -j$(nproc --all)\r
-cp -v perl cpan/podlators/scripts/pod2man /tools/bin\r
-mkdir -pv /tools/lib/perl5/${PERLVER}\r
-cp -Rv lib/* /tools/lib/perl5/${PERLVER}\r
-cd ..\r
-2.26-2.29 sed xz tar texinfo\r
-for package in sed-4.7 tar-1.32 texinfo-6.6 xz-5.2.4; do\r
-    tar xvf "${package}".tar.*\r
-    cd "${package}" || continue\r
-    ./configure --prefix=/tools\r
-    make -j$(nproc --all)\r
-    make install\r
-    cd $LFS/sources/ || break\r
-    rm -rvf "${package}"\r
-done\r
-2.19 python3\r
-sed -i '/def add_multiarch_paths/a \        return' setup.py\r
-./configure --prefix=/tools --without-ensurepip\r
-make -j$(nproc --all)\r
-make install\r
-2.19 Stripping(清理无用内容)\r
-strip --strip-debug /tools/lib/*\r
-/usr/bin/strip --strip-unneeded /tools/{,s}bin/*\r
-rm -rvf /tools/{,share}/{info,man,doc}\r
-find /tools/{lib,libexec} -name \*.la -delete\r
-2.20 改变属主\r
-exit #请确认是切换到root\r
-chown -R root:root $LFS/tools\r
-第三章 构建编译内核依赖以及ssh, dhcp和nano\r
-3.1 准备虚拟内核文件系统\r
-mkdir -pv $LFS/{dev,proc,sys,run}\r
-mknod -m 600 $LFS/dev/console c 5 1\r
-mknod -m 666 $LFS/dev/null c 1 3\r
-mount -v --bind /dev $LFS/dev\r
-mount -vt devpts devpts $LFS/dev/pts -o gid=5,mode=620\r
-mount -vt proc proc $LFS/proc\r
-mount -vt sysfs sysfs $LFS/sys\r
-mount -vt tmpfs tmpfs $LFS/run\r
-3.2 chroot\r
-chroot "$LFS" /tools/bin/env -i \\r
-    HOME=/root                  \\r
-    TERM="$TERM"                \\r
-    PS1='(sure chroot) \u:\w\$ ' \\r
-    PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \\r
-    /tools/bin/bash --login +h\r
-3.3 创建目录(几个lib文件夹请确认下,是否要改lib64或者添加lib64)\r
-mkdir -p /{bin,boot,etc/{opt,sysconfig},home,lib64/firmware,mnt,opt}\r
-mkdir -p /{media/{floppy,cdrom},sbin,srv,var}\r
-install -d -m 0750 /root\r
-install -d -m 1777 /tmp /var/tmp\r
-mkdir -p /usr/{,local/}{bin,include,lib64,sbin,src}\r
-mkdir -p /usr/{,local/}share/{color,dict,doc,info,locale,man}\r
-mkdir -p /usr/{,local/}share/{misc,terminfo,zoneinfo}\r
-mkdir -p /usr/libexec\r
-mkdir -p /usr/{,local/}share/man/man{1..8}\r
-case $(uname -m) in\r
-x86_64) mkdir -p /lib64 ;;\r
-i?86)   mkdir -p /lib32 ;;\r
-esac\r
-mkdir -p /var/{log,mail,spool}\r
-ln -sf /run /var/run\r
-ln -sf /run/lock /var/lock\r
-mkdir -p /var/{opt,cache,lib64/{color,misc,locate},local}\r
-3.4 创建必要的文件和符号链接(几个lib文件夹请确认下,是否要改lib64或者添加lib64)\r
-ln -sv /tools/bin/{bash,cat,chmod,dd,echo,ln,mkdir,pwd,rm,stty,touch} /bin\r
-ln -sv /tools/bin/{env,install,perl,printf}         /usr/bin\r
-ln -sv /tools/lib/libgcc_s.so{,.1}                  /usr/lib64\r
-ln -sv /tools/lib/libstdc++.{a,so{,.6}}             /usr/lib64\r
-\r
-ln -sv bash /bin/sh\r
-ln -sv /proc/self/mounts /etc/mtab\r
-cat > /etc/passwd << "EOF"\r
-root:x:0:0:root:/root:/bin/bash\r
-bin:x:1:1:bin:/dev/null:/bin/false\r
-daemon:x:6:6:Daemon User:/dev/null:/bin/false\r
-messagebus:x:18:18:D-Bus Message Daemon User:/var/run/dbus:/bin/false\r
-nobody:x:99:99:Unprivileged User:/dev/null:/bin/false\r
-EOF\r
-\r
-cat > /etc/group << "EOF"\r
-root:x:0:\r
-bin:x:1:daemon\r
-sys:x:2:\r
-kmem:x:3:\r
-tape:x:4:\r
-tty:x:5:\r
-daemon:x:6:\r
-floppy:x:7:\r
-disk:x:8:\r
-lp:x:9:\r
-dialout:x:10:\r
-audio:x:11:\r
-video:x:12:\r
-utmp:x:13:\r
-usb:x:14:\r
-cdrom:x:15:\r
-adm:x:16:\r
-messagebus:x:18:\r
-input:x:24:\r
-mail:x:34:\r
-kvm:x:61:\r
-wheel:x:97:\r
-nogroup:x:99:\r
-users:x:999:\r
-EOF\r
-\r
-exec /tools/bin/bash --login +h\r
-touch /var/log/{btmp,lastlog,faillog,wtmp}\r
-chgrp -v utmp /var/log/lastlog\r
-chmod -v 664  /var/log/lastlog\r
-chmod -v 600  /var/log/btmp\r
-3.5 kernel header\r
-make mrproper\r
-make INSTALL_HDR_PATH=dest headers_install #lfs开发版有误,headers_install可用\r
-find dest/include \( -name .install -o -name ..install.cmd \) -delete\r
-cp -rv dest/include/* /usr/include\r
-3.6 glibc(二次编译需加入libidn2)\r
-GCCVER=9.2.0\r
-#patch -Np1 -i ../glibc-2.28-fhs-1.patch #请确认是否需要打这个补丁,是否需要打其他补丁\r
-case $(uname -m) in\r
-i?86)\r
-GCC_INCDIR=/usr/lib32/gcc/$(uname -m)-pc-linux-gnu/${GCCVER}/include\r
-ln -sf ld-linux.so.2 /lib32/ld-lsb.so.3\r
-;;\r
-x86_64)\r
-GCC_INCDIR=/usr/lib64/gcc/x86_64-pc-linux-gnu/${GCCVER}/include\r
-ln -sf ../lib64/ld-linux-x86-64.so.2 /lib64\r
-ln -sf ../lib64/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3\r
-;;\r
-esac\r
-mkdir -v build\r
-cd build\r
-##CC="gcc -ffile-prefix-map=/tools=/usr" \\r
-#../configure --prefix=/usr                          \\r
-#             --disable-werror                       \\r
-#             --enable-kernel=3.2                    \\r
-#             --enable-stack-protector=strong        \\r
-#             --with-headers=/usr/include            \\r
-#             libc_cv_slibdir=/lib ###原本为LFS提供\r
-CC="gcc" CXX="g++" CFLAGS="-O2 -mtune=generic -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-function -Wno-maybe-uninitialized" ../configure \\r
-    --host=x86_64-sure-linux-gnu --build=x86_64-sure-linux-gnu \\r
-    --prefix=/usr \\r
-    --libexecdir=/usr/libexec \\r
-    --infodir=/usr/share/info \\r
-    --enable-add-ons=libidn --without-cvs \\r
-    --without-selinux \\r
-    --enable-kernel=3.2 \\r
-    --with-headers=/usr/include \\r
-    --enable-obsolete-rpc \\r
-    --enable-obsolete-nsl \\r
-    --disable-crypts ##由mageia提供\r
-make -j1\r
-case $(uname -m) in\r
-  i?86)   ln -sfnv $PWD/elf/ld-linux.so.2        /lib ;;\r
-  x86_64) ln -sfnv $PWD/elf/ld-linux-x86-64.so.2 /lib64 ;;\r
-esac\r
-make check -j$(nproc --all) #mageia的configure fail3,多出来了cond-mutex10\r
-#这里任何的fail都应该报告,xpass/xfail/unsupport不需要\r
-\r
-\r
-\r
-以下未测试,请不要急着用\r
-\r
-\r
-touch /etc/ld.so.conf\r
-sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile\r
-make install\r
-cp -v ../nscd/nscd.conf /etc/nscd.conf\r
-mkdir -pv /var/cache/nscd\r
-make localedata/install-locales -j$(nproc --all)\r
-cat > /etc/nsswitch.conf << "EOF"\r
-# Begin /etc/nsswitch.conf\r
-passwd: files\r
-group: files\r
-shadow: files\r
-hosts: files dns\r
-networks: files\r
-protocols: files\r
-services: files\r
-ethers: files\r
-rpc: files\r
-# End /etc/nsswitch.conf\r
-EOF\r
-tar -xvf ../../tzdata*.tar.gz\r
-ZONEINFO=/usr/share/zoneinfo\r
-mkdir -pv $ZONEINFO/{posix,right}\r
-for tz in etcetera southamerica northamerica europe africa antarctica asia australasia backward pacificnew systemv; do\r
-zic -L /dev/null -d $ZONEINFO -y "sh yearistype.sh" ${tz}\r
-zic -L /dev/null -d $ZONEINFO/posix -y "sh yearistype.sh" ${tz}\r
-zic -L leapseconds -d $ZONEINFO/right -y "sh yearistype.sh" ${tz}\r
-done\r
-cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO\r
-zic -d $ZONEINFO -p America/New_York\r
-unset ZONEINFO\r
-cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime\r
-请检查下lib64\r
-cat > /etc/ld.so.conf << "EOF"\r
-# Begin /etc/ld.so.conf\r
-/usr/local/lib\r
-/opt/lib\r
-EOF\r
-cat >> /etc/ld.so.conf << "EOF"\r
-# Add an include directory\r
-include /etc/ld.so.conf.d/*.conf\r
-EOF\r
-mkdir -pv /etc/ld.so.conf.d\r
-3.7 调整工具链\r
-mv -v /tools/bin/{ld,ld-old}\r
-mv -v /tools/$(uname -m)-pc-linux-gnu/bin/{ld,ld-old}\r
-mv -v /tools/bin/{ld-new,ld}\r
-ln -sv /tools/bin/ld /tools/$(uname -m)-pc-linux-gnu/bin/ld\r
-gcc -dumpspecs | sed -e 's@/tools@@g' -e '/\*startfile_prefix_spec:/{n;s@.*@/usr/lib64/ @}' -e '/\*cpp:/{n;s@$@ -isystem /usr/include@}' > `dirname $(gcc --print-libgcc-file-name)`/specs\r
-echo 'int main(){}' > dummy.c\r
-cc dummy.c -v -Wl,--verbose &> dummy.log\r
-readelf -l a.out | grep ': /lib64'\r
-如果没有任何错误,应该输出[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]\r
-grep -o '/usr/lib64.*/crt[1in].*succeeded' dummy.log #查下是不是lib64\r
-应该输出/usr/lib64/../lib64/crt1.o succeeded\r
-/usr/lib64/../lib64/crti.o succeeded\r
-/usr/lib64/../lib64/crtn.o succeeded\r
-grep -B1 '^ /usr/include' dummy.log\r
-应该输出#include <...> search starts here:\r
-/usr/include\r
-grep 'SEARCH.*/usr/lib64' dummy.log |sed 's|; |\n|g' #查下是不是lib64\r
-应该输出SEARCH_DIR("/usr/lib64")\r
-SEARCH_DIR("/lib64")\r
-grep "/lib.*/libc.so.6 " dummy.log\r
-应该输出attempt to open /lib64/libc.so.6 succeeded\r
-grep found dummy.log\r
-应该输出found ld-linux-x86-64.so.2 at /lib64/ld-linux-x86-64.so.2\r
-rm -v dummy.c a.out dummy.log\r
-3.8 zlib\r
-./configure --prefix=/usr --libdir=/usr/lib64 --sharedlibdir=/usr/lib64\r
-make -j$(nproc --all)\r
-make check -j$(nproc --all)\r
-make install\r
-mv /usr/lib64/libz.so.* /lib64\r
-ln -sf ../../lib64/$(readlink /usr/lib64/libz.so) /usr/lib64/libz.so\r
-3.9 file\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64\r
-make -j$(nproc --all)\r
-make check -j$(nproc --all)\r
-make install\r
-3.10 readline\r
-READLINEVER=8.0\r
-sed -i '/MV.*old/d' Makefile.in\r
-sed -i '/{OLDSUFF}/c:' support/shlib-install\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --disable-static --docdir=/usr/share/doc/readline-${READLINEVER}\r
-make SHLIB_LIBS="-L/tools/lib64 -lncursesw" -j$(nproc --all)\r
-make SHLIB_LIBS="-L/tools/lib64 -lncursesw" install\r
-mv /usr/lib64/lib{readline,history}.so.* /lib64\r
-chmod u+w /lib64/lib{readline,history}.so.*\r
-ln -sf ../../lib64/$(readlink /usr/lib64/libreadline.so) /usr/lib64/libreadline.so\r
-ln -sf ../../lib64/$(readlink /usr/lib64/libhistory.so ) /usr/lib64/libhistory.so\r
-#install -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-${READLINEVER} #可以不安装文档\r
-3.11 m4\r
-sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib64/*.c\r
-echo "#define _IO_IN_BACKUP 0x100" >> lib64/stdio-impl.h\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64\r
-make -j$(nproc --all)\r
-make check -j$(nproc --all)\r
-make install\r
-3.12 bc (LFS开发版使用的是https://github.com/gavinhoward/bc,这里还是使用GNU bc)\r
-cat > bc/fix-libmath_h << "EOF"\r
-#! /bin/bash\r
-sed -e '1   s/^/{"/' \\r
-    -e     's/$/",/' \\r
-    -e '2,$ s/^/"/'  \\r
-    -e   '$ d'       \\r
-    -i libmath.h\r
-\r
-sed -e '$ s/$/0}/' \\r
-    -i libmath.h\r
-EOF\r
-ln -s /tools/lib64/libncursesw.so.6 /usr/lib64/libncursesw.so.6\r
-ln -sf libncursesw.so.6 /usr/lib64/libncurses.so\r
-sed -i -e '/flex/s/as_fn_error/: ;; # &/' configure\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --with-readline --mandir=/usr/share/man --infodir=/usr/share/info\r
-make -j$(nproc --all)\r
-echo "quit" | ./bc/bc -l Test/checklib.b\r
-make install\r
-3.13 binutils\r
-expect -c "spawn ls"\r
-如果输出spawn ls即可继续\r
-sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in\r
-mkdir -v build\r
-cd build\r
-../configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-gold --enable-ld=default --enable-plugins --enable-shared --disable-werror --enable-64-bit-bfd --with-system-zlib\r
-make tooldir=/usr -j$(nproc --all)\r
-make -k check -j$(nproc --all) #任何fail请报告\r
-make tooldir=/usr install\r
-3.14 gmp\r
-cp -v configfsf.guess config.guess\r
-cp -v configfsf.sub   config.sub\r
-GMPVER=6.1.2\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-cxx --disable-static --docdir=/usr/share/doc/gmp-${GMPVER}\r
-make -j$(nproc --all)\r
-#make html\r
-make check 2>&1 -j$(nproc --all) | tee gmp-check-log\r
-awk '/# PASS:/{total+=$3} ; END{print total}' gmp-check-log #不等于190请报告\r
-make install\r
-#make install-html\r
-3.15 mpfr\r
-MPFRVER=6.1.2\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-cxx --disable-static --docdir=/usr/share/doc/gmp-${MPFRVER}\r
-make -j$(nproc --all)\r
-#make html\r
-make check -j$(nproc --all) #任何fail请报告\r
-make install\r
-#make install-html\r
-3.16 mpc\r
-MPCVER=1.1.0\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --disable-static --docdir=/usr/share/doc/mpc-${MPCVER}\r
-make -j$(nproc --all)\r
-#make html\r
-make check -j$(nproc --all) #任何fail请报告\r
-make install\r
-#make install-html\r
-3.17 shadow\r
-sed -i 's/groups$(EXEEXT) //' src/Makefile.in\r
-find man -name Makefile.in -exec sed -i 's/groups\.1 / /'   {} \;\r
-find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \;\r
-find man -name Makefile.in -exec sed -i 's/passwd\.5 / /'   {} \;\r
-sed -i -e 's@#ENCRYPT_METHOD DES@ENCRYPT_METHOD SHA512@' \\r
--e 's@/var/spool/mail@/var/mail@' etc/login.defs\r
-sed -i 's/1000/999/' etc/useradd\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --sysconfdir=/etc --with-group-name-max-length=32\r
-make -j$(nproc --all)\r
-make install\r
-mv -v /usr/bin/passwd /bin\r
-pwconv\r
-grpconv\r
-passwd root #已设置为lfslinux\r
-3.18 gcc\r
-GCCVER=9.2.0\r
-mkdir -v build\r
-cd build\r
-export LIBRARY_PATH=/usr/lib64:/lib64:/usr/lib:/lib\r
-SED=sed ../configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --with-slibdir=/lib64 --enable-languages=c,c++ --disable-multilib --disable-bootstrap --disable-libmpx --with-system-zlib\r
-make -j$(nproc --all)\r
-ulimit -s 32768\r
-chown -Rv nobody .\r
-su nobody -s /bin/bash -c "PATH=$PATH make -k check -j$(nproc --all)"\r
-../contrib/test_summary\r
-grep -A7 Summ #fail请报告\r
-make install\r
-rm -rf /usr/lib64/gcc/$(gcc -dumpmachine)/${GCCVER}/include-fixed/bits/\r
-chown -v -R root:root /usr/lib64/gcc/*linux-gnu/${GCCVER}/include{,-fixed}\r
-ln -sv ../usr/bin/cpp /lib64\r
-ln -sv gcc /usr/bin/cc\r
-install -v -dm755 /usr/lib64/bfd-plugins\r
-ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/${GCCVER}/liblto_plugin.so /usr/lib64/bfd-plugins/\r
-echo 'int main(){}' > dummy.c\r
-cc dummy.c -v -Wl,--verbose &> dummy.log\r
-readelf -l a.out | grep ': /lib64'\r
-如果输出[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]即可继续\r
-grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log\r
-应该输出\r
-/usr/lib64/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/crt1.o succeeded\r
-/usr/lib64/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/crti.o succeeded\r
-/usr/lib64/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/crtn.o succeeded\r
-\r
-grep -B4 '^ /usr/include' dummy.log\r
-应该输出\r
-#include <...> search starts here:\r
- /usr/lib64/gcc/x86_64-pc-linux-gnu/9.2.0/include\r
- /usr/local/include\r
- /usr/lib64/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed\r
- /usr/include\r
-\r
-grep 'SEARCH.*/usr/lib64' dummy.log |sed 's|; |\n|g'\r
-应该输出\r
-SEARCH_DIR("/usr/x86_64-pc-linux-gnu/lib64")\r
-SEARCH_DIR("/usr/local/lib64")\r
-SEARCH_DIR("/lib64")\r
-SEARCH_DIR("/usr/lib64")\r
-SEARCH_DIR("/usr/x86_64-pc-linux-gnu/lib")\r
-SEARCH_DIR("/usr/local/lib")\r
-SEARCH_DIR("/lib")\r
-SEARCH_DIR("/usr/lib");\r
-\r
-grep "/lib64.*/libc.so.6 " dummy.log\r
-应该输出attempt to open /lib64/libc.so.6 succeeded\r
-grep found dummy.log\r
-应该输出found ld-linux-x86-64.so.2 at /lib64/ld-linux-x86-64.so.2\r
-rm -v dummy.c a.out dummy.log\r
-mkdir -pv /usr/share/gdb/auto-load/usr/lib64\r
-mv -v /usr/lib64/*gdb.py /usr/share/gdb/auto-load/usr/lib64\r
-3.19 pkg-config\r
-PKGCONFIGVER=0.29.2\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --with-internal-glib --disable-host-tool --docdir=/usr/share/doc/pkg-config-${PKGCONFIGVER}\r
-make -j$(nproc --all)\r
-make check -j$(nproc --all)\r
-make install\r
-3.20 ncurses\r
-sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in\r
-./configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --mandir=/usr/share/man --with-shared --without-debug --without-normal --enable-pc-files --enable-widec\r
-make -j$(nproc --all)\r
-make install\r
-mv -v /usr/lib64/libncursesw.so.6* /lib64\r
-ln -sfv ../../lib64/$(readlink /usr/lib64/libncursesw.so) /usr/lib64/libncursesw.so\r
-for lib in ncurses form panel menu ; do\r
-    rm -vf                    /usr/lib64/lib${lib}.so\r
-    echo "INPUT(-l${lib}w)" > /usr/lib64/lib${lib}.so\r
-    ln -sfv ${lib}w.pc        /usr/lib64/pkgconfig/${lib}.pc\r
-done\r
-rm -vf                     /usr/lib64/libcursesw.so\r
-echo "INPUT(-lncursesw)" > /usr/lib64/libcursesw.so\r
-ln -sfv libncurses.so      /usr/lib64/libcurses.so\r
-#mkdir -v       /usr/share/doc/ncurses-6.1\r
-#cp -v -R doc/* /usr/share/doc/ncurses-6.1\r
-3.21 attr\r
-ATTRVER=2.4.48\r
-./configure --prefix=/usr --bindir=/bin --libdir=/usr/lib64 --libexecdir=/usr/lib64 --disable-static --sysconfdir=/etc --docdir=/usr/share/doc/attr-${ATTRVER}\r
-make -j$(nproc --all)\r
-make check -j$(nproc --all)\r
-make install\r
-mv -v /usr/lib64/libattr.so.* /lib64\r
-ln -sfv ../../lib64/$(readlink /usr/lib64/libattr.so) /usr/lib64/libattr.so\r
-第四章 基本系统配置(这章需要根据实际文件大幅修改)\r
-\r
-第五章 构建内核\r
-\r
-第六章 重新准备img,向rpm进发\r
diff --git a/spec打包规范.md b/spec打包规范.md
deleted file mode 100644 (file)
index 9ecd2af..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-## spec打包规范(第一版)\r
-1. 不要在开头增加项目注释说明,后期统一添加;\r
-2. 不是肯定下来需要添加的patch不要添加(OpenSUSE的patch较多,注意剥离);\r
-3. 打包从简,不是必须拆的包不拆包;\r
-4. 少留空档,暂时不写Changelog,Dependency;\r
-5. 只打包amd64架构,暂时不打包其他架构(含i586);\r
-6. 默认lib为/usr/lib64,/usr/lib为指向lib64的链接,/usr/lib32预留给32位库;\r
-7. 不打包32位软件,保留noarch类软件,32位库打包时,在64位下打包,利用编译器兼容性进行打包,命名暂定为xxx-lib32。\r
diff --git a/todo.md b/todo.md
deleted file mode 100644 (file)
index 1cbb9ba..0000000
--- a/todo.md
+++ /dev/null
@@ -1,15 +0,0 @@
-多种内核模型(包括新旧I/A处理器,KVM/openVZ/docker等,预留3系列,4系列LTS内核供无法兼容新内核的设备)
-
-调试OpenRC,实在不行继续用systemd
-
-确认python3与python2软件的代码问题,准备好patch,方便默认py迁移至py3
-
-设计命令行版简化版安装程序
-
-确认默认vim/nano/emacs/ne风格,设计一个迷你的包管理器,只负责给用户安装配置文件
-
-尽快确认徽标,主题颜色
-
-ARM版确认将提供,但不确认是否armhf, aarch64,ARM版讲提供strong和lite两种版本,strong版为glibc,不压缩不裁剪,lite版使用musl,内核裁剪,默认软件压缩
-
-如果MIPS架构和SHENWEI(申威)架构需要定当移植。