Descobrir o erro na compilação
Moderador: Moderadores
-
prmuller
- 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
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
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

- Mensagens: 122
- Registrado em: 11 Nov 2008 12:25
- Localização: Vila Velha - ES
Descobrir o erro na compilação
Olá,
Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?
Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Descobrir o erro na compilação
Nesse caso não tem como, porque o erro NÃO é na compilação, e sim na linquedição.prmuller escreveu:Como fazer para que o hbmk2 na compilação mostre também a linha do prg que está dando erro?
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/
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

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Descobrir o erro na compilação
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"
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.
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"
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.prmuller escreveu: erro de referencia indefinida num arquivo (HB_FUN_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)
Alexandre Santos (AlxSts)
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Descobrir o erro na compilação
Olá!
Vixi... escrevemos ao mesmo tempo...
Vixi... escrevemos ao mesmo tempo...
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
prmuller
- 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
Obrigado ao mestre Quintas e ao Alexandre pela resposta.
Vou seguim o que disseram e posto o resultado.
Sds.
Paulo Muller
Vou seguim o que disseram e posto o resultado.
Sds.
Paulo Muller
-
prmuller
- 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
Amigos, boa tarde!
O problema da compilação foi resolvido.
Agradeço a todos.
Sds,
Paulo Muller
O problema da compilação foi resolvido.
Agradeço a todos.
Sds,
Paulo Muller
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Descobrir o erro na compilação
Olá!
Poderia informar qual era o problema?
Poderia informar qual era o problema?
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
prmuller
- 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
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
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