Página 1 de 1

Descobrir o erro na compilação

Enviado: 20 Jan 2022 14:39
por prmuller
Amigos, boa tarde!

Estou tentando compilar um sistema que foi feito em Clipper 5.3 e convertido para Harbour com a ferramenta fornecida pelo mestre Toledo.

Sempre, após as alterações, sempre compilou legal.
Agora no final esta apontando um erro de referencia indefinida num arquivo (HB_FUN_W) que não existe.
Alguém daria uma luz?

Antecipadamente grato,

Paulo Muller

Descobrir o erro na compilação

Enviado: 20 Jan 2022 17:05
por prmuller
Olá,

Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?

Descobrir o erro na compilação

Enviado: 20 Jan 2022 17:24
por JoséQuintas
prmuller escreveu:Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?
Nesse caso não tem como, porque o erro NÃO é na compilação, e sim na linquedição.

E como o nome é extremamente comum, pode dar um trabalhinho encontrar.

Dá dando falta de procedure ou function, HB_FUN_W significa função w() em PRG, então procure por "w(" nos fontes.
Desse jeito mesmo, só abrindo parêntesis, porque provavelmente deve ter parâmetro, então não serve w().
Se o fonte for bem formatado, pode tentar " w(" com um espaço em branco antes, pra limitar os resultados.

Descobrir o erro na compilação

Enviado: 20 Jan 2022 17:27
por alxsts
Olá!

A compilação não está dando erro. O erro está ocorrendo no momento da linkedição. Está acusando a falta da função "W"
prmuller escreveu: erro de referencia indefinida num arquivo (HB_FUN_W)
Como não conheço nenhuma função em xBase com o nome W, creio que, durante as alterações feitas, parte do nome de uma função foi apagado acidentalmente. Por exemplo, uma função Wait(). Apagou o ait e ficou só o W.

Use o recurso "Find in Files" do teu editor de texto e procure em todos os .Prg por W ou HB_FUN_W. Se encontrar, está faltando adicionar a lib correspondente. Mas, como você diz que funcionava antes, o problema parece ser o primeiro que mencionei.

Se tiver um backup dos .Prg antes da última alteração, compile ele e veja se o erro ocorre (acredito que não vá ocorrer). Se não ocorrer, refaça as alterações nos arquivos do backup e recompile.

Descobrir o erro na compilação

Enviado: 20 Jan 2022 17:37
por alxsts
Olá!

Vixi... escrevemos ao mesmo tempo...

Descobrir o erro na compilação

Enviado: 20 Jan 2022 17:45
por prmuller
Obrigado ao mestre Quintas e ao Alexandre pela resposta.
Vou seguim o que disseram e posto o resultado.

Sds.

Paulo Muller

Descobrir o erro na compilação

Enviado: 21 Jan 2022 14:04
por prmuller
Amigos, boa tarde!

O problema da compilação foi resolvido.
Agradeço a todos.

Sds,

Paulo Muller

Descobrir o erro na compilação

Enviado: 21 Jan 2022 15:22
por alxsts
Olá!

Poderia informar qual era o problema?

Descobrir o erro na compilação

Enviado: 22 Jan 2022 07:50
por prmuller
Bom dia!

Conforme sugerido pelo Alexandre o que estava ocorrendo era o seguinte: na compilação, sempre no mesmo prg acusava uma função indefinida embora a função existisse num dos arquivos de rotinas do sistema.
Me lembrei que, há tempos, isso já havia me ocorrido e troquei o local da função com problema do arquivo de rotinas para o próprio prg problemático.
Pronto. Compilou direitinho e está rodando tranquilamente.

O porquê disso ocorrer, sinceramente, eu não sei, mas, espero que fique a experiência para alguém que precisar.

Sds,

Paulo Muller