Versão autorregulada do pacote de sobrescrição do GCC versão instalada [duplicado]

2

Estou usando o Debian para fazer a maior parte do meu trabalho de codificação, e estava fazendo um projeto de lição de casa que exigia uma certa versão do gcc para compilar o programa em que eu estava trabalhando.

Eu baixei o código do gcc e o compilei / instalei, mas esqueci de alterar as opções, então acho que ele foi instalado no local padrão, que no meu caso era / usr / local / bin / gcc. Eu não estava planejando com antecedência quando fiz isso, e quando percebi que tinha terminado a versão do gcc para o meu dever de casa, não sabia como removê-lo. Ao googling, percebi que isso não era realmente possível, a menos que eu usei checkinstall que eu não fiz. Agora, no entanto, como / usr / local / bin está à frente no meu caminho, ele usa minha versão mais recente do gcc para compilar por padrão, o que causa problemas quando tento usar o gdb para depurar essas versões de aplicativos. Também estou preocupado que isso cause um comportamento indesejado em outros aplicativos que podem estragar tudo.

Nota: Eu não posso apenas reorganizar meu caminho, porque existem aplicativos em / usr / local / bin que eu quero que sobreponham os que estão em / usr / bin

Então, minha pergunta é: como você gerencia aplicativos auto-compilados com pacotes de repositórios? O que eu quero dizer é, qual é a maneira correta de fazer isso, de modo que eles não entrem em conflito e um possa ser removido com segurança sem estragar tudo? Em termos de misturá-los, como eu faria algo como usar uma versão auto-compilada de um aplicativo como uma dependência para uma versão empacotada? Eu não acho que a Debian reconheça automaticamente que, se eu instalar o gdb ou algo assim, minha versão local do gcc atenderá aos critérios.

Também como uma nota: Onde diabos você instala aplicativos compilados? / usr / local / bin? /optar? / home / user / bin? / own_directory?

Meu pedido de desculpas se eu escrevi isso mal ou qualquer coisa, eu posso esclarecer mais, se necessário.

    
por Glen Takahashi 04.11.2013 / 23:51

1 resposta

2

Você poderia obter uma lista dos arquivos que foram instalados ao compilar o gcc usando a opção make ou -n - por exemplo, --dry-run . executando make -n install no diretório de origem do gcc e redirecionando a saída para um arquivo.

Com um pouco de pós-processamento (por exemplo, com sed ), isso deve fornecer uma lista de arquivos que você pode excluir, mas tenha cuidado, verifique a lista antes de se comprometer a excluí-los.

    
por 05.11.2013 / 03:23