Como Criar e Aplicar um Patch de Correção de Código

Publicado por Mauricio Ferrari em 02/02/2021

[ Hits: 3.189 ]

Blog: https://www.youtube.com/@LinuxDicasPro

 


Como Criar e Aplicar um Patch de Correção de Código



Um dia você resolve compilar um software no seu sistema e descobre um bug ou uma incompatibilidade. Por mais que você busque na internet, não é garantido que você irá encontrar um patch já pronto para o seu problema. Mas, se você por ventura, descobre o problema, é claro que você vai querer aplicá-lo ao código para poder compilar o programa.

A melhor forma de fazer isso é criar um patch para aplicar ao código. Para fazer isso, vamos usar dois comandos, o diff e o patch. Uma forma que eu costumo usar e não dá erro é copiar o arquivo do código problemático, acrescentando "-original" e logo em seguida, alterando o código do arquivo cujo nome não foi alterado, pois esse será usado como o destino do patch.
  • project.h-original
  • project.h

O "project.h-original" mantém seu código inalterado, e o "project.h" teve seu código alterado. No terminal, é hora de montar o patch com o diff, onde diretório source está localizado:

diff -u diretorio-source/project.h-original diretorio-source/project.h > fix-project.patch

Agora, toda vez que você quiser aplicar o patch ao código, você pode usar esse método que julgo mais coerente e que aprendi com os SlackBuilds. Para facilitar, você pode jogar o patch no diretório source e usar o comando patch dessa forma que vai funcionar de boa:

patch -Np1 -i fix-project.patch

E assim, você resolve seu problema com o código de forma recomendada e apropriada.

Outras dicas deste autor

gcc: fatal error: cannot execute 'cc1plus': execvp: [...] - Como resolver no Linux Mint 20

Adicionando e listando as regras criadas na lista de exceções do slackpkg usando egrep e sed

Desativar Abertura de Diretório ao Plugar Mídias USB no Linux Mint 20

Instalando corretamente o Wine atualizado no Debian, Ubuntu, Linux Mint e derivados

Grub não detecta outras partições após a atualização do Slackware [Resolvido]

Leitura recomendada

Instalando o Helper e o Handbrake 0.9.5 no Ubuntu 10.10

Desligando remotamente máquinas de um domínio

Usando o mailx

Mesclando vídeos e áudios usando ffmpeg

Limpar a partição /boot no Ubuntu ou Debian

  

Comentários
[1] Comentário enviado por VictorServerTI em 12/09/2022 - 11:56h

Alguém sabe como adaptar para uma pasta inteira?

Ou mesmo o equivalente em git? sem usar repositórios remotos



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts