Quando o rpmbuild produz pacotes i386 vs. i686 (Centos 6)

2

Estou trabalhando no sistema de construção para um software industrial bastante grande e antigo. Como resultado da compilação, ele gera cerca de 20 rpms (construídos do zero com o rpmbuild, construídos a partir do zero via setup.py, remendado e reconstruído src.rpms).

A execução da construção em máquinas diferentes (todos os Centos 6.4 e 6.9) produz resultados inconsistentes em relação à arquitetura final dos pacotes. Uma máquina distribui todos os pacotes i386. Em outras máquinas alguns dos pacotes saem i386 enquanto alguns saem i686. Os resultados são consistentes em qualquer máquina, mas inconsistentes entre máquinas diferentes.

Minha pergunta é:

Que fatores controlam se o rpmbuild produz pacotes i386 vs. pacotes i686?

    
por edgar.holleis 13.03.2018 / 16:26

1 resposta

4

Existem vários fatores que controlam a arquitetura produzida.

1) Nos arquivos 'spec', cada pacote pode consistir em BuildArch field com um arco específico.

2) Se os pacotes no arquivo 'spec' não tiverem BuildArch field, então o pacote de compilação terá a arquitetura do sistema de compilação de destino.

3) As versões antigas do comando rpm tinham a opção --buildarch <arch> que tem um arco definido.

    
por 13.03.2018 / 16:38