quarta-feira, 31 de agosto de 2011

Criando seu RPM: Parte 3

Agora que você já sabe mais sobre os RPMs e que entendeu melhor o conteúdo de um arquivo spec, já pode por a mão na massa e tentar criar seu primeiro RPM. Vou falar hoje sobre o uso do rpmbuild, uma ferramenta bem útil para criar seu rpm.


Para se criar um RPM existem dois "programas" principais: o rpmbuild e o Mock. A diferença entre os dois é a questão da praticidade e do uso em si. Enquanto o rpmbuild se destina a criar um rpm apenas, ou seja, não instala dependências e não cria rpms de outras arquiteturas, o Mock tem a capacidade de criar rpms para diferentes arquiteturas e versões da distribuição, além de instalar automaticamente as dependências colocadas no arquivo spec. Hoje nós falaremos do rpmbuild.


Embora o Mock seja mais completo, se você está iniciando recomendo fortemente que use o rpmbuild primeiro. Apesar de não instalar dependências, ele é mais "simples de entender" e cria com sucesso os RPMs e SRPMs do sua arquitetura (i686, x86_64, etc).


Levando em consideração que seu arquivo spec já está configurado corretamente e que o código fonte do programa já está na pasta SOURCES, podemos iniciar o uso do rpmbuild. A primeira coisa a fazer é mudar a pasta de trabalho atual para a pasta /home/usuario/rpmbuild/SPECS:


cd ~/rpmbuild/SPECS


Já na pasta SPECS, onde fica seu arquivo spec você precisará utilizar o comando correto do rpmbuild. A estrutura básica do comando é:


rpmbuild -ba/-bs nomedoprograma.spec


Onde:




  • -ba irá criar o RPM;

  • -bs irá criar o arquivo src.rpm.


Importante: Nunca use as opções -ba e -bs juntas. O exemplo dado acima é somente para mostrar onde as opções devem entrar.


Uma coisa que deve ser observada é NUNCA criar um RPM como root. Todo processo pode e deve ser feito com o nível normal de acesso. Se o seu arquivo spec contiver erros, o rpmbuild irá apresentá-los no momento da criação do pacote, que não será concluído.


Hoje você aprendeu a criar o seu primeiro RPM usando o rpmbuild. Na próxima semana iremos aprender a utilizar o Mock, de forma básica também, para criar seu RPM em outras arquiteturas. Até a próxima semana. ;)

Nenhum comentário:

Postar um comentário