mirror of
https://github.com/Linux4Yourself/book.git
synced 2025-01-23 14:32:18 +08:00
Merge pull request #956 from Linux4Yourself/feature/mkddocs-upstream-fixes
Feature/mkddocs upstream fixes
This commit is contained in:
commit
8a4e8cd95b
@ -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 {} ';'
|
||||
```
|
||||
|
||||
|
||||
|
@ -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>
|
||||
|
||||
## Подготовка
|
||||
|
||||
Исправьте пути установки библиотек:
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -199,7 +199,7 @@ Cryptographic API --->
|
||||
|
||||
В разделе `Device Drivers` - нужно пройтись по разделам и включить драйвера для своего оборудования - нестандартные жёсткие диски, мышки, USB устройства, веб-камеры, Bluetooth, Wi-Fi адаптеры, принтеры и т. д.
|
||||
|
||||
Посмотреть, какое оборудование подключено к вашей системе можно командой:
|
||||
Если вы собирали пакет `pciutils`, то просмотреть, какое оборудование подключено к вашему ПК, можно командой:
|
||||
|
||||
```bash
|
||||
lspci
|
||||
|
@ -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
|
||||
```
|
||||
|
||||
|
||||
```
|
Loading…
Reference in New Issue
Block a user