From c01ba7a5e885107c75b9d87337a245163c51967b Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Sun, 8 May 2022 13:38:22 +0300 Subject: [PATCH 01/12] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/additional/{sha-bang.md => shebang.md} | 0 mkdocs.yml | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename docs/additional/{sha-bang.md => shebang.md} (100%) diff --git a/docs/additional/sha-bang.md b/docs/additional/shebang.md similarity index 100% rename from docs/additional/sha-bang.md rename to docs/additional/shebang.md diff --git a/mkdocs.yml b/mkdocs.yml index 91a6b30c..43de3bfb 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -298,5 +298,5 @@ nav: - Типы разделов и каталогов: additional/partitions_catalogs.md - Выбор размера файла подкачки: additional/swap.md - Настройка zram: additional/zram.md - - О шебангах в скриптах Linux: additional/sha-bang.md + - О шебангах в скриптах Linux: additional/shebang.md lang: ru From 4298ccfc1117f90b84fe45c929236f4710499bcd Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:39:58 +0300 Subject: [PATCH 02/12] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=82=D0=B4=D0=B5=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=D0=B9=20'README'=20=D1=81=D1=82=D1=80=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=86=D1=8B=20=D0=B4=D0=BB=D1=8F=20libstdc++?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Была добавлена отдельная 'README.md' страница для пакета 'libstdc++'; в файле 'docs/packages/packages.json' был описан пакет. NOTE: Содержимое страницы пакета не было сгенерировано --- docs/build-temp-system/libstdc.md | 2 +- docs/packages/libstdc/README.md | 1 + docs/packages/packages.json | 19 ++++++++++++++++++- 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 docs/packages/libstdc/README.md diff --git a/docs/build-temp-system/libstdc.md b/docs/build-temp-system/libstdc.md index 37d09efa..5da48719 100644 --- a/docs/build-temp-system/libstdc.md +++ b/docs/build-temp-system/libstdc.md @@ -1,6 +1,6 @@ # LibstdC++ Проход 1 -{{ include('../packages/gcc/README.md') }} +{{ include('../packages/libstdc/README.md') }} ## Настройка diff --git a/docs/packages/libstdc/README.md b/docs/packages/libstdc/README.md new file mode 100644 index 00000000..bc84dc0b --- /dev/null +++ b/docs/packages/libstdc/README.md @@ -0,0 +1 @@ +# libstdcpp diff --git a/docs/packages/packages.json b/docs/packages/packages.json index 8c904b7c..b9b714e3 100644 --- a/docs/packages/packages.json +++ b/docs/packages/packages.json @@ -1142,6 +1142,23 @@ "multilibSupport": false, "downloadUrl": "https://lx4u.ru/downloads/packages/libffi-3.4.2.tar.gz" }, + { + "name": "libstdcpp", + "fileName": "gcc-11.2.0.tar.xz", + "description": "Стандартная библиотека C++", + "url": "https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz", + "homeUrl": "https://gnu.org/software/gcc", + "version": "11.2.0", + "releasesUrl": "https://ftp.gnu.org/gnu/gcc", + "priority": "required", + "md5": "31c86f2ced76acac66992eeedce2fce2", + "size": "818", + "installedSize": 0, + "sbu2": 0.4, + "scripts": [], + "multilibSupport": false, + "downloadUrl": "https://lx4u.ru/downloads/packages/gcc-11.2.0.tar.xz" + }, { "name": "libpipeline", "fileName": "libpipeline-1.5.5.tar.gz", @@ -2469,4 +2486,4 @@ "multilibSupport": false, "scripts": [] } -] \ No newline at end of file +] From 8f6726e0e340ca857e97777418fd4901a4362113 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:40:53 +0300 Subject: [PATCH 03/12] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D0=BD=D0=B8=D1=86=D1=8B=20=D1=81=20=D0=B8=D0=BD?= =?UTF-8?q?=D1=81=D1=82=D1=80=D1=83=D0=BA=D1=86=D0=B8=D1=8F=D0=BC=D0=B8=20?= =?UTF-8?q?=D0=BF=D0=BE=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Удалён ненужный заголовок --- docs/build-temp-system/libstdc.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/build-temp-system/libstdc.md b/docs/build-temp-system/libstdc.md index 5da48719..2419c552 100644 --- a/docs/build-temp-system/libstdc.md +++ b/docs/build-temp-system/libstdc.md @@ -1,5 +1,3 @@ -# LibstdC++ Проход 1 - {{ include('../packages/libstdc/README.md') }} From 124e6200132956273c6b5bfb21f347477e4851c5 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:53:23 +0300 Subject: [PATCH 04/12] Fix build-system/linux-headers --- docs/build-system/linux-headers.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/build-system/linux-headers.md b/docs/build-system/linux-headers.md index f15c295f..fa10ea1e 100644 --- a/docs/build-system/linux-headers.md +++ b/docs/build-system/linux-headers.md @@ -17,7 +17,7 @@ **Данный пакет является частью архива с ядром Linux**. -Убедитесь, что в архив не включены файлы которые могут помешать сборке. +Убедитесь, что в архив не включены файлы, которые могут помешать сборке. ```bash make mrproper @@ -44,4 +44,6 @@ cp -rv usr/include $LIN/usr ### Установленные файлы -Данный пакет устанавливает множество заголовочных файлов, в частности ` /usr/include/asm/*.h, /usr/include/asm-generic/*.h, /usr/include/drm/*.h, /usr/include/linux/*.h, /usr/include/misc/*.h, /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h, /usr/include/sound/*.h, /usr/include/video/*.h, and /usr/include/xen/*.h` +**Заголовочные файлы:** `/usr/include/asm/*.h`, `/usr/include/asm-generic/*.h`, `/usr/include/drm/*.h`, `/usr/include/linux/*.h`, `/usr/include/misc/*.h`, `/usr/include/mtd/*.h`, `/usr/include/rdma/*.h`, `/usr/include/scsi/*.h`, `/usr/include/sound/*.h`, `/usr/include/video/*.h` и `/usr/include/xen/*.h` + +**Директории:** `/usr/include/asm`, `/usr/include/asm-generic`, `/usr/include/drm`, `/usr/include/linux`, `/usr/include/misc`, `/usr/include/mtd`, `/usr/include/rdma`, `/usr/include/scsi`, `/usr/include/sound`, `/usr/include/video` и `/usr/include/xen` From e76a567f0374459071fcca1bab0ec69560e02fbf Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:53:39 +0300 Subject: [PATCH 05/12] Fix build-temp-system/findutils --- docs/build-temp-system/findutils.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/build-temp-system/findutils.md b/docs/build-temp-system/findutils.md index 4d733cb5..7d5b1a4e 100644 --- a/docs/build-temp-system/findutils.md +++ b/docs/build-temp-system/findutils.md @@ -3,7 +3,10 @@ ## Настройка ```bash -./configure --prefix=/usr --host=$LIN_TGT +./configure --prefix=/usr \ + --localstatedir=/var/lib/locate \ + --host=$LIN_TGT \ + --build=$(build-aux/config.guess) ``` ## Сборка From 2e90d9594e98ef02ed2022b9336a5fae7986abdb Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:53:57 +0300 Subject: [PATCH 06/12] Fix build-temp-system/glibc --- docs/build-temp-system/glibc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/build-temp-system/glibc.md b/docs/build-temp-system/glibc.md index c4c23dfe..701dffc8 100644 --- a/docs/build-temp-system/glibc.md +++ b/docs/build-temp-system/glibc.md @@ -14,7 +14,7 @@ ln -sfv ../lib/ld-linux-x86-64.so.2 $LIN/lib64/ld-lsb-x86-64.so.3 В пакете Glibc по умолчанию используется несоответствующая стандарту FHS директория `/var/db`. Для исправления этого примените патч: ```bash -patch -Np1 -i ../glibc-2.34-fhs-1.patch +patch -Np1 -i ../glibc-2.35-fhs-1.patch ``` Пакет Glibc требует использовать отдельную директорию для сборки. Создайте её: From afaf3f994ddafa4af9483a45b83fb9c55f67ce62 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Tue, 10 May 2022 15:54:11 +0300 Subject: [PATCH 07/12] Fix cross-toolchain/gcc --- docs/cross-toolchain/gcc.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/cross-toolchain/gcc.md b/docs/cross-toolchain/gcc.md index f1dc9afc..a99cb140 100644 --- a/docs/cross-toolchain/gcc.md +++ b/docs/cross-toolchain/gcc.md @@ -38,7 +38,7 @@ cd build ../configure \ --target=$LIN_TGT \ --prefix=$LIN/tools \ - --with-glibc-version=2.11 \ + --with-glibc-version=2.35 \ --with-sysroot=$LIN \ --with-newlib \ --without-headers \ @@ -63,7 +63,7 @@ cd build ### Значения параметров -`--with-glibc-version = 2.11` - эта опция гарантирует, что пакет будет совместим с версией glibc на хосте. Для него установлено минимальное требование glibc, указанное в Требованиях к хост-системе. +`--with-glibc-version=2.35` - эта опция указывает версию glibc, которая будет использоваться в целевой системе. Она не относится к glibc хост-системы, потому что всё, скомпилированное с помощью gcc (первый проход), будет выполняться в среде chroot, которая изолирована от glibc хост-системы. `--with-newlib` - поскольку рабочая библиотека C еще недоступна, это гарантирует, что константа `ignit_libc` определена при сборке libgcc. Это предотвращает компиляцию любого кода, требующего поддержки libc. From 1d296c9f1420403f49158f72e330184445e38c8b Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Fri, 10 Jun 2022 18:37:48 +0300 Subject: [PATCH 08/12] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20cross-toolchai?= =?UTF-8?q?n/binutils?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Удалено '-j1' и предупреждение о проблемах с многопоточной сборкой, так как сейчас этих проблем нет --- docs/cross-toolchain/binutils.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/cross-toolchain/binutils.md b/docs/cross-toolchain/binutils.md index 907032a0..321d971f 100644 --- a/docs/cross-toolchain/binutils.md +++ b/docs/cross-toolchain/binutils.md @@ -49,9 +49,7 @@ make ## Установка ```bash -make install -j1 +make install ``` -`-j1` предотвращает возможную ошибку установки. - Дополнительную информацию о компиляции пакетов смотрите [здесь](../../additional/src-compiling). From 1267f33f5a513060a42adf932f87042f7591e583 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Fri, 10 Jun 2022 18:45:32 +0300 Subject: [PATCH 09/12] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20linux-5.16.1=20->=20linux-5.18.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/packages/packages.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/packages/packages.json b/docs/packages/packages.json index b9b714e3..899182aa 100644 --- a/docs/packages/packages.json +++ b/docs/packages/packages.json @@ -1212,19 +1212,19 @@ }, { "name": "linux", - "fileName": "linux-5.16.12.tar.xz", + "fileName": "linux-5.18.2.tar.xz", "description": "Ядро операционной системы.", - "url": "https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.16.12.tar.xz", + "url": "https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.18.2.tar.xz", "homeUrl": "https://www.kernel.org", - "version": "5.16.12", + "version": "5.18.2", "releasesUrl": "https://www.kernel.org", "priority": "required", - "md5": "e859941968400c4437bd62b4fe39b7b7", - "size": "121.65", + "md5": "b04ef6c41e2a8965201c28e6963beaf8", + "size": "123.8", "installedSize": 0, "sbu": 0, "sbu2": 4.4, - "downloadUrl": "https://lx4u.ru/downloads/packages/linux-5.16.12.tar.xz", + "downloadUrl": "https://lx4u.ru/downloads/packages/linux-5.18.2.tar.xz", "scripts": [], "multilibSupport": false }, From 89b559cc055deb5335f8fb187e9ecfc9ac479ed3 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Fri, 10 Jun 2022 19:13:37 +0300 Subject: [PATCH 10/12] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20gcc-11.2.0=20->=20gcc-12.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Обновление информации о пакете; соответствующее изменение путей в сборочных инструкциях пакетов glibc и libstdc++, собираемых во временной системе --- docs/build-temp-system/glibc.md | 2 +- docs/build-temp-system/libstdc.md | 4 ++-- docs/packages/packages.json | 12 ++++++------ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/build-temp-system/glibc.md b/docs/build-temp-system/glibc.md index 701dffc8..21d665b3 100644 --- a/docs/build-temp-system/glibc.md +++ b/docs/build-temp-system/glibc.md @@ -84,7 +84,7 @@ sed '/RTLDLIST=/s@/usr@@g' -i $LIN/usr/bin/ldd Завершите установку файла `limits.h`, запустив скрипт из состава GCC: ```bash -$LIN/tools/libexec/gcc/$LIN_TGT/11.2.0/install-tools/mkheaders +$LIN/tools/libexec/gcc/$LIN_TGT/12.1.0/install-tools/mkheaders ``` ## Тестирование diff --git a/docs/build-temp-system/libstdc.md b/docs/build-temp-system/libstdc.md index 2419c552..d5bd754b 100644 --- a/docs/build-temp-system/libstdc.md +++ b/docs/build-temp-system/libstdc.md @@ -23,7 +23,7 @@ cd build --disable-multilib \ --disable-nls \ --disable-libstdcxx-pch \ - --with-gxx-include-dir=/tools/$LIN_TGT/include/c++/11.2.0 + --with-gxx-include-dir=/tools/$LIN_TGT/include/c++/12.1.0 ``` ### Значения параметров @@ -34,7 +34,7 @@ cd build `--disable-libstdcxx-pch` - отключает установку предварительно скомпилированных заголовков, ненужных на данном этапе -`--with-gxx-include-dir=/tools/$LIN_TGT/include/c++/11.2.0` - путь поиска заголовков C++ +`--with-gxx-include-dir=/tools/$LIN_TGT/include/c++/12.1.0` - путь поиска заголовков C++. `libstdc++` является стандартной библиотекой C++, указанная опцией директория должна соответствовать местоположению, в котором компилятор C++ будет искать стандартные включаемые файлы. ## Сборка diff --git a/docs/packages/packages.json b/docs/packages/packages.json index 899182aa..e7f065e3 100644 --- a/docs/packages/packages.json +++ b/docs/packages/packages.json @@ -623,17 +623,17 @@ }, { "name": "gcc", - "fileName": "gcc-11.2.0.tar.xz", + "fileName": "gcc-12.1.0.tar.xz", "description": "Пакет содержит набор компиляторов GNU для таких языков как Си и Си++.", - "url": "https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz", + "url": "https://ftp.gnu.org/gnu/gcc/gcc-12.1.0/gcc-12.1.0.tar.xz", "homeUrl": "https://gnu.org/software/gcc", - "version": "11.2.0", + "version": "12.1.0", "releasesUrl": "https://ftp.gnu.org/gnu/gcc", "priority": "required", - "md5": "31c86f2ced76acac66992eeedce2fce2", + "md5": "ed45b55ee859ada4b25a1e76e0c4d966", "size": "77.14", "installedSize": 161, - "sbu": 14.8, + "sbu": 14, "sbu2": 25, "scripts": [ "build", @@ -645,7 +645,7 @@ "test" ], "multilibSupport": false, - "downloadUrl": "https://lx4u.ru/downloads/packages/gcc-11.2.0.tar.xz" + "downloadUrl": "https://lx4u.ru/downloads/packages/gcc-12.1.0.tar.xz" }, { "name": "gdbm", From e8d719ddedfb23a614f1bd8a0a5ca9604c7931d1 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Fri, 10 Jun 2022 19:35:11 +0300 Subject: [PATCH 11/12] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D1=81=D0=B1?= =?UTF-8?q?=D0=BE=D1=80=D0=BE=D1=87=D0=BD=D1=8B=D1=85=20=D0=B8=D0=BD=D1=81?= =?UTF-8?q?=D1=82=D1=80=D1=83=D0=BA=D1=86=D0=B8=D0=B9=20'build-temp-system?= =?UTF-8?q?/ncurses'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Добавлено удаление ненужного файла; добавлена опция '--disable-stripping' в 'configure' --- docs/build-temp-system/ncurses.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/build-temp-system/ncurses.md b/docs/build-temp-system/ncurses.md index 40d59b6b..c9aff003 100644 --- a/docs/build-temp-system/ncurses.md +++ b/docs/build-temp-system/ncurses.md @@ -32,6 +32,7 @@ cd .. --without-debug \ --without-ada \ --without-normal \ + --disable-stripping \ --enable-widec ``` @@ -43,6 +44,8 @@ cd .. `--without-normal` - отключает установку большинства статических библиотек. +`--disable-stripping` - отключает возможность использования программы `strip` с хоста. Использования программ, установленных на хосте, в кросс-компилированной системе, может привести к сбоям. + `--enable-widec` - включает установку библиотек с поддержкой многобайтовых символов. ## Сборка @@ -58,6 +61,19 @@ make DESTDIR=$LIN TIC_PATH=$(pwd)/tic-build/progs/tic install echo "INPUT(-lncursesw)" > $LIN/usr/lib/libncurses.so ``` +Удалите ненужную статическую библиотеку, не обработанную на этапе +конфигурирования: + +```bash +rm -v $LIN/usr/lib/libncurses++w.a +``` + +### Значения параметров + +`TIC PATH=$(pwd)/build/progs/tic` - передаёт путь только что собранного `tic`. + +`echo "INPUT(-lncursesw)" > $LIN/usr/ ...` - библиотека `libncurses.so` нужна для некоторых пакетов, которые будут собраны позже. + ## При раздельной структуре каталогов Переместите разделяемые библиотеки в `$LIN/lib`: From f68931447b50bed8b5a2fa14390a533a2b7da1e5 Mon Sep 17 00:00:00 2001 From: Linuxoid85 Date: Fri, 10 Jun 2022 19:40:59 +0300 Subject: [PATCH 12/12] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20coreutils-9.0=20->=20coreutils-9.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/packages/packages.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/packages/packages.json b/docs/packages/packages.json index e7f065e3..4dcccf9b 100644 --- a/docs/packages/packages.json +++ b/docs/packages/packages.json @@ -263,17 +263,17 @@ }, { "name": "coreutils", - "fileName": "coreutils-9.0.tar.xz", + "fileName": "coreutils-9.1.tar.xz", "description": "Coreutils - пакет программного обеспечения GNU, содержащий большое количество основных утилит, таких как cat, ls и rm, необходимых для UNIX-подобных операционных систем. Пакет включает несколько более ранних пакетов — textutils, shellutils, fileutils и другие различные утилиты.", - "url": "https://ftp.gnu.org/gnu/coreutils/coreutils-9.0.tar.xz", + "url": "https://ftp.gnu.org/gnu/coreutils/coreutils-9.1.tar.xz", "homeUrl": "https://gnu.org/software/coreutils", - "version": "9.0", + "version": "9.1", "releasesUrl": "https://ftp.gnu.org/gnu/coreutils/", "priority": "required", - "md5": "0d79ae8a6124546e3b94171375e5e5d0", + "md5": "8b1ca4e018a7dce9bb937faec6618671", "size": "5.35", "installedSize": 3, - "sbu": 0.5, + "sbu": 0.6, "sbu2": 0.4, "patches": [ "coreutils-patch" @@ -288,7 +288,7 @@ "test" ], "multilibSupport": false, - "downloadUrl": "https://lx4u.ru/downloads/packages/coreutils-9.0.tar.xz" + "downloadUrl": "https://lx4u.ru/downloads/packages/coreutils-9.1.tar.xz" }, { "name": "dbus",