Merge pull request #956 from Linux4Yourself/feature/mkddocs-upstream-fixes

Feature/mkddocs upstream fixes
This commit is contained in:
makpif 2021-11-04 18:41:37 +03:00 committed by GitHub
commit 8a4e8cd95b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 86 additions and 46 deletions

View File

@ -43,15 +43,67 @@ userdel -r tester
Вы можете удалить ненужные символы из исполняемых файлов:
```bash
find /lib /usr/lib{,32} -type f -name \*.a \
-exec strip --strip-debug {} ';'
save_usrlib="$(cd /usr/lib; ls ld-linux*)
libc.so.6
libthread_db.so.1
libquadmath.so.0.0.0
libstdc++.so.6.0.29
libitm.so.1.0.0
libatomic.so.1.2.0"
find /lib /usr/lib{,32} -type f -name \*.so* ! -name \*dbg \
cd /usr/lib
for LIB in $save_usrlib; do
objcopy --only-keep-debug $LIB $LIB.dbg
cp $LIB /tmp/$LIB
strip --strip-unneeded /tmp/$LIB
objcopy --add-gnu-debuglink=$LIB.dbg /tmp/$LIB
install -vm755 /tmp/$LIB /usr/lib
rm /tmp/$LIB
done
online_usrbin="bash find strip"
online_usrlib="libbfd-2.37.so
libhistory.so.8.1
libncursesw.so.6.2
libm.so.6
libreadline.so.8.1
libz.so.1.2.11.zlib-ng
$(cd /usr/lib; find libnss*.so* -type f)"
for BIN in $online_usrbin; do
cp /usr/bin/$BIN /tmp/$BIN
strip --strip-unneeded /tmp/$BIN
install -vm755 /tmp/$BIN /usr/bin
rm /tmp/$BIN
done
for LIB in $online_usrlib; do
cp /usr/lib/$LIB /tmp/$LIB
strip --strip-unneeded /tmp/$LIB
install -vm755 /tmp/$LIB /usr/lib
rm /tmp/$LIB
done
for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg) \
$(find /usr/lib -type f -name \*.a) \
$(find /usr/{bin,sbin,libexec} -type f); do
case "$online_usrbin $online_usrlib $save_usrlib" in
*$(basename $i)* )
;;
* ) strip --strip-unneeded $i
;;
esac
done
unset BIN LIB save_usrlib online_usrbin online_usrlib
find /usr/lib{,32} -type f -name \*.a \
-exec strip --strip-debug {} ';'
find /usr/lib32 -type f -name \*.so* ! -name \*dbg \
-exec strip --strip-unneeded {} ';'
find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
-exec strip --strip-all {} ';'
```

View File

@ -1,21 +1,5 @@
{{ include('../packages/gcc/README.md') }}
<script>
new Vue({
el: '#main',
data: { package: {} },
mounted: function () {
this.getPackage('gcc');
},
methods: {
getPackage: function(name) {
getPackage(name)
.then(response => this.package = response);
},
}
})
</script>
## Подготовка
Исправьте пути установки библиотек:

View File

@ -21,13 +21,6 @@ Glibc по умолчанию использует несоответствую
patch -Np1 -i ../glibc-2.33-fhs-1.patch
```
Исправьте ошибку:
```bash
sed -e '402a\ *result = local->data.services[database_index];' \
-i nss/nss_database.c
```
Пакет Glibc требует использовать отдельную директорию для сборки. Создайте её:
```bash
@ -37,19 +30,21 @@ cd build
## Настройка
Если вы собираете систему с раздельной структурой директорий, убедитесь, что утилиты `ldconfig` и `sln` установлены в `/usr/sbin`:
```bash
echo "rootsbindir=/usr/sbin" > configparms
```
```bash
../configure \
--prefix=/usr \
--disable-werror \
--enable-kernel=3.2 \
--with-headers=/usr/include \
--libexecdir=/usr/lib \
libc_cv_slibdir=/usr/lib \
libc_cv_include_x86_isa_level=no
libc_cv_slibdir=/lib
```
> Если вы используете раздельную структуру каталогов, то измените значение параметра `libc_cv_slibdir` на `/lib`: `libc_cv_slibdir=/lib`, и удалите параметр `--libexecdir=/usr/lib`.
### Для multilib
Добавьте параметр `--enable-multi-arch`
@ -60,8 +55,6 @@ cd build
`--with-headers=/usr/include` - задаёт путь к заголовкам ядра.
`libc_cv_include_x86_isa_level=no` - исключает возможную ошибку.
## Сборка
```bash

View File

@ -11,7 +11,7 @@ ln -sfv ../lib/ld-linux-x86-64.so.2 $LIN/lib64/ld-lsb-x86-64.so.3
Первая ссылка используется GCC, вторую требует LSB.
В пакете Glibc по умолчанию используется несоответствующая стандаруту FHS директория `/var/db`. Для исправления этого примените патч:
В пакете Glibc по умолчанию используется несоответствующая стандарту FHS директория `/var/db`. Для исправления этого примените патч:
```bash
patch -Np1 -i ../glibc-2.34-fhs-1.patch
@ -24,6 +24,13 @@ mkdir build
cd build
```
Убедитесь, что утилиты `ldconfig` и `sln` установлены в `/usr/sbin`:
```bash
echo "rootsbindir=/usr/sbin" > configparms
```
Запустите скрипт `configure`:
```bash
@ -65,6 +72,13 @@ make
make DESTDIR=$LIN install
```
Исправьте жестко заданный путь к исполняемому загрузчику в скрипте ldd:
```bash
sed '/RTLDLIST=/s@/usr@@g' -i $LIN/usr/bin/ldd
```
Завершите установку файла `limits.h`, запустив скрипт из состава GCC:
```bash

View File

@ -199,7 +199,7 @@ Cryptographic API --->
В разделе `Device Drivers` - нужно пройтись по разделам и включить драйвера для своего оборудования - нестандартные жёсткие диски, мышки, USB устройства, веб-камеры, Bluetooth, Wi-Fi адаптеры, принтеры и т. д.
Посмотреть, какое оборудование подключено к вашей системе можно командой:
Если вы собирали пакет `pciutils`, то просмотреть, какое оборудование подключено к вашему ПК, можно командой:
```bash
lspci

View File

@ -48,17 +48,16 @@ ln -sf bash /bin/sh
pacman -S base-devel
```
### Для Rosa
### Для Fedora, Redhat
```bash
urpmi bison gawk texinfo make gcc-c++
dnf install bison gawk texinfo make gcc-c++
```
## Проверка соответствия программного обеспечения
Чтобы узнать, что ваша хост-система полностью соответствует всем необходимым для дальнейшей работы требованиям, выполните следующий набор команд:
```bash
{{ include('../scripts/version-check.sh') }}
```
@ -129,6 +128,4 @@ tar (GNU tar) 1.32
texi2any (GNU texinfo) 6.6
xz (XZ Utils) 5.2.4
g++ compilation OK
```
```