Compilando o kernel em tempo real a partir de fontes RHEL 6 MRG no CentOS 6

3

Estou tentando compilar o kernel-rt-2.6.33.9-rt31.75.el6rt.src.rpm de RPMs de origem MRG RHEL6 no sistema Centos 6 x86_64.

É a primeira vez que estou fazendo isso, então fiz uma pesquisa sobre como fazer isso corretamente. Pelo que encontrei, fiz:

rpm -ihv kernel-rt-2.6.33.9-rt31.75.el6rt.src.rpm 
cd ~/rpmbuild/SPECS
nano kernel-rt.spec 
rpmbuild -bb kernel-rt.spec 2> build-err.log | tee build-out.log

no kernel-rt.spec Desvinculei a compilação de variantes que eu não preciso - isto é, compile apenas rt e firmware. Também definido para não construir debuginfo.

Após a conclusão da compilação, eu tenho em ~/rpmbuild/RPMS/x86_64/ dois arquivos:

kernel-rt-2.6.33.9-rt31.75.el6rt.x86_64.rpm
kernel-rt-devel-2.6.33.9-rt31.75.el6rt.x86_64.rpm

mas quando tentei instalar o kernel, recebi uma mensagem de erro: $ sudo rpm -ihv kernel-rt-2.6.33.9-rt31.75.el6rt.x86_64.rpm erro: dependências com falha:     kernel-rt-firmware > = 2.6.33.9-rt31.75.el6rt é necessário para o kernel-rt-2.6.33.9-rt31.75.el6rt.x86_64

Não havia pasta ~ / rpmbuild / RPMS / noarch - onde eu esperaria que ela aparecesse.

Além disso, tentei rpmbuild --rebuild kernel-rt-2.6.33.9-rt31.75.el6rt.src.rpm , mas obtive os mesmos resultados ...

O que estou fazendo de errado? Eu vi esta pergunta , mas sugere o que eu já tentei e eu quero construir o kernel eu mesmo, não uso pré-construído a partir do SLC.

    
por sashk 16.11.2011 / 03:45

3 respostas

3

Eu ainda recomendo usar os kernels pré-compilados em tempo real se você não estiver fazendo mudanças drásticas no driver ou outras otimizações, mas se você precisa construir o seu próprio, faça o seguinte para gerar os pacotes apropriados.

rpmbuild -ba --without debug kernel.spec

Isso constrói seu kernel.

rpmbuild -ba --target noarch --with firmware --without debug --without doc --without perftool --without perf kernel.spec 

Isso constrói o pacote kernel-rt-firmware.

    
por 16.11.2011 / 04:05
1

Eu não tentei isso sozinho, mas há um SRM rt-firmware no repositório referenciado na questão. Edifício que pode fornecer a dependência.

    
por 13.11.2012 / 22:13
-1
cd ~/rpmbuild/SPECS
rpmbuild -bb --without debug kernel-rt.spec --clean

cd ~/rpmbuild/SPECS
rpmbuild -bb --target noarch --with firmware --without debug --without doc --without perftool --without perf kernel-rt.spec --clean
    
por 22.08.2012 / 20:41