Descobrir o erro na compilação

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

prmuller
Usuário Nível 3
Usuário Nível 3
Mensagens: 122
Registrado em: 11 Nov 2008 12:25
Localização: Vila Velha - ES

Descobrir o erro na compilação

Mensagem 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
prmuller
Usuário Nível 3
Usuário Nível 3
Mensagens: 122
Registrado em: 11 Nov 2008 12:25
Localização: Vila Velha - ES

Descobrir o erro na compilação

Mensagem por prmuller »

Olá,

Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Descobrir o erro na compilação

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Descobrir o erro na compilação

Mensagem 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.
[]´s
Alexandre Santos (AlxSts)
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Descobrir o erro na compilação

Mensagem por alxsts »

Olá!

Vixi... escrevemos ao mesmo tempo...
[]´s
Alexandre Santos (AlxSts)
prmuller
Usuário Nível 3
Usuário Nível 3
Mensagens: 122
Registrado em: 11 Nov 2008 12:25
Localização: Vila Velha - ES

Descobrir o erro na compilação

Mensagem por prmuller »

Obrigado ao mestre Quintas e ao Alexandre pela resposta.
Vou seguim o que disseram e posto o resultado.

Sds.

Paulo Muller
prmuller
Usuário Nível 3
Usuário Nível 3
Mensagens: 122
Registrado em: 11 Nov 2008 12:25
Localização: Vila Velha - ES

Descobrir o erro na compilação

Mensagem por prmuller »

Amigos, boa tarde!

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

Sds,

Paulo Muller
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Descobrir o erro na compilação

Mensagem por alxsts »

Olá!

Poderia informar qual era o problema?
[]´s
Alexandre Santos (AlxSts)
prmuller
Usuário Nível 3
Usuário Nível 3
Mensagens: 122
Registrado em: 11 Nov 2008 12:25
Localização: Vila Velha - ES

Descobrir o erro na compilação

Mensagem 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
Responder