Pergunta

Eu tenho um projeto C ++ antigo compilado com o VC6.

Preciso vincular estaticamente uma nova biblioteca para implementar uma nova funcionalidade.

Infelizmente, a nova biblioteca define um símbolo (ou seja, inflato) que já está definido em uma biblioteca estática anteriormente vinculada.

É claro que não posso me livrar de nenhuma das bibliotecas e, é claro, não tenho acesso ao código -fonte da biblioteca.

Existe uma maneira de evitar o erro do vinculador (LNK2005)?

Foi útil?

Solução

Se você sabe que as duas versões de _inflate são idênticas, ou pelo menos "compatíveis", você pode usar o /Force: opção de múltiplas ligantes forçá -lo a ignorar os confrontos de nome.

Obviamente, se vincular a uma versão desse código que é "incompatível" de qualquer maneira, poderá causar comportamento indefinido.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top