Existe uma vantagem para atualizar Binutils de 2.16.1 a 2,19? Por quê?
-
22-07-2019 - |
Pergunta
No PSPSDK (Homebrew) nós estamos usando a Binutils 2.16.1 para montar e ligar o código para o PlayStation Portable, no entanto que a liberação está ficando bastante desatualizado (3 versões substituíram-lo). A comunidade e me têm vindo a actualizar o GCC e newlib às últimas versões estáveis ??e tudo parece funcionar com os antigos binutils.
Will GCC produzir melhor código com binutils 2,19? Por quê? Vai binutils 2,19 produzir arquivos de melhor elf e libs de 2.16.1? Por quê?
Solução
binutils
2,19 tem um novo vinculador ELF chamado gold
que é multi Threaded, escrito em C ++ moderno, e um pouco mais rápido do que o ligador ld
habitual. Eu não tenho certeza no entanto sobre o trabalho envolvido para adaptá-lo.
Além disso, também novas versões são sempre uma boa idéia. Desempenho e correções de bugs são susceptíveis de ter sido incluída, é claro. Eu acho que eu certamente experimentá-lo e se algo der errado, você ainda pode Retroceda.
Outras dicas
Em geral, você não precisa atualizar binutils a menos que você topar com algum bug corrigido em uma versão binutils mais tarde ou precisar de novos recursos (como vinculador build-ids).
Em particular, a geração de código GCC é largamente independente da binutils (excepto para construções como __thread
, que requerem certo nível de suporte de binutils).