LFS Troubles - Aplicando Patch na Seção 5.7.1

1

Peça desculpas antecipadamente se isso tiver sido solicitado antes e se for muito óbvio. Eu estou seguindo o guia muito literalmente neste momento para começar. A página em questão é esta:

link

Este ponto especifica para executar isto:

patch -Np1 -i ../glibc-2.22-upstream_i386_fix-1.patch

No entanto, isso parece retornar isso:

lfs@linux-NVIDIA-nForce-590-SLI /mnt/lfs/tools $ patch -Np1 -i ../glibc-2.22-upstream_i386_fix-1.patch 
can't find file to patch at input line 20
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Submitted By:            Bruce Dubbs <bdubbs at linuxfromscratch dot org>
|Date:                    2015-08-23
|Initial Package Version: 2.22
|Upstream Status:         In repository
|Origin:                  https://github.molgen.mpg.de/git-mirror/glibc
|Description:             This patch fixes a build problem on 32-bit systems.
|
|commit a08e80d1143f6b0386d5bc8cc7b8ed576091dbf3
|Author: Andrew Senkevich <[email protected]>
|Date:   Wed Aug 19 16:54:28 2015 +0300
|
|        [BZ #18796]
|        * scripts/test-installation.pl: Don't add -lmvec to build options if
|        libmvec wasn't built.
|
|diff --git a/scripts/test-installation.pl b/scripts/test-installation.pl
|index cac1562..79b2b3e 100755
|--- a/scripts/test-installation.pl
|+++ b/scripts/test-installation.pl
--------------------------
File to patch: 

Então, para iniciantes, para aqueles de vocês que seguiram o guia antes, onde exatamente o patch deve estar relacionado ao arquivo que está sendo corrigido? Pelo que li, parece que pode estar em qualquer lugar, mas espera-se que esteja no diretório / mnt / lfs / sources. Que arquivo está corrigindo em particular? E qual diretório eu deveria estar ao executar este comando?

Para referência, criei os diretórios / mnt / lfs / mnt / lfs / sources / mnt / lfs / tools conforme solicitado no guia e estou executando o comando de / mnt / lfs / tools, mas estou não tenho certeza onde eu deveria estar que eu possa referenciar o arquivo em questão com ../ assim.

Atualmente o patch está em / mnt / lfs / sources e os arquivos extraídos para o glibc-2.22 estão em / mnt / lfs / tools

lfs@linux-NVIDIA-nForce-590-SLI /mnt/lfs $ ls -lah /mnt/lfs/sources/glibc-2.22-upstream_i368_fix-1.patch 
-rw-r--r-- 1 linux linux 1.9K Sep 30 20:23 /mnt/lfs/sources/glibc-2.22-upstream_i368_fix-1.patch

lfs@linux-NVIDIA-nForce-590-SLI /mnt/lfs $ ls -lah /mnt/lfs/tools/glibc-2.22 -ddrwxr-xr-x 68 lfs lfs 4.0K Aug  5 01:42 /mnt/lfs/tools/glibc-2.22

Se eu estou deixando alguma coisa de fora, por favor me avise, eu estou apenas batendo minha cabeça contra a parede tentando entender este ponto de correção e como fazê-lo fazer o que é suposto fazer.

    
por leximach 24.10.2015 / 04:16

2 respostas

0

Você tem que estar no diretório glibc-2.22 extraído (daí o .. no caminho do patch, ele assume que o patch está no diretório superior, que no seu caso seria $LFS ). é suposto para extrair e construir dentro do diretório $LFS/source , o $LFS/tools não é para isso (é destinado a manter o sistema temporário).

Você realmente precisa ler atentamente Capítulo 5.3 .

    
por 24.10.2015 / 11:47
0

Você precisa extrair o tarball glibc primeiro. Ele foi omitido.

tar -xf glibc-2.22.tar.xz
cd glibc-2.22
patch -Np1 -i ../glibc-2.22-upstream_i386_fix-1.patch

Boa sorte:)

    
por 18.11.2015 / 22:24

Tags