RPM Build Falha na construção%

0

Eu estou tentando criar um RPM do Samba para uma versão antiga do Fedora. Não há nenhum disponível para download na internet, então eu tenho o código-fonte.

Até o momento, tenho os cinco diretórios padrão /BUILD , /RPMS , /SOURCES , /SPECS e /SRPMS .

Em /SOURCES existe o código fonte em uma tarball.
Em /SPEC está o arquivo samba.spec .

Quando eu faço um rpmbuild -v -bb --clean SPECS/samba.spec ele cai depois de desarmar a bola e tentar construir. O erro é: line 29: autogen.sh : command not found .

Mais especificamente, no meu %build , há: autogen.sh , ./configure e make .

Depois disso, eu instalei tudo com make install na seção %install .

Onde estou indo errado?

Por favor, note que tudo isso funciona bem quando instalar manualmente o código-fonte.

Com o ./autogen.sh removido, ele aparece com: '/var/tmp/rpm-tmp.BEyARh: linha 29: ./configure: Nenhum arquivo ou diretório.

EDIT: A-ha! Eu acho que sei o problema. Ele está procurando na raiz /samba diretório para ./autogen.sh e etc, quando deveria estar procurando em '/ samba / source3 / uma vez que ele extraiu a bola tar e a colocou em / BUILD. Como configuro isso?

    
por Federer 16.05.2012 / 14:03

1 resposta

2

A primeira coisa que eu tentaria é substituir a linha

autogen.sh

no seu arquivo .spec com

./autogen.sh

porque o autogen.sh provavelmente não está no seu PATH. Colocar o ./ na frente dele irá dizer ao shell para executar o arquivo, desde que haja um shebang ( #! ) no topo. Se a primeira linha de autogen.sh não for algo como #! /bin/bash , em vez de ./autogen.sh você poderia tentar

bash autogen.sh

que explicitamente executará o arquivo como um script bash.

Editado em resposta à pergunta alterada:

Uma forma de hackear isso pode ser mudar

./autogen.sh

para

./source3/autogen.sh

ou para

pushd source3
./autogen.sh
popd

para que rpm possa encontrar o arquivo. Não tenho certeza se isso é considerado "bom" embalagem, no entanto.

Também pode haver algumas configurações de RPM que você pode alterar. Existe um excelente livro chamado Maximum RPM por Edward C. Bailey que fala sobre tudo sobre a criação de RPMs e esta seção pode ajudá-lo na configuração de um configuração de compilação ímpar.

    
por 16.05.2012 / 14:44

Tags