Página 1 de 2
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 09:51
por h1e1
Olá a todos!
Existe executavel ou função que faz o debug no fonte?
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 11:09
por alxsts
Olá!
Sim, existe. Tem o mesmo visual do debugger do Clipper porém os recursos não são os mesmos. Faltam alguns. Para usar o recurso, é preciso marcar a opção apropriada durante a criação do script de compilação, pelo HbMake (imagino que você use HbMake). Feito isto, é só usar a função AltD() no ponto do código que quer depurar ou teclar ALD + D durante a execução, quando o programa estiver em algum estado de espera (um READ, por exemplo).
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 11:24
por h1e1
Esqueci de informar rsrsrsrrs

No caso uso o xDev, tem como integrar debug a ele? Ou usar separado? E onde baixo? ^^
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 14:09
por alxsts
Olá!
Em algum lugar o xDev cria o script .bc para compilar e linkar o projeto. É neste arquivo que você precisará colocar o parâmetro -d para que seja possível usar o debugger. Não é preciso baixar nem instalar nada. Localize este arquivo e poste aqui para análise.
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 14:27
por h1e1
Olá
Achei eles, mas não tem como mostrar que, pelo fato ser arquivos interno da empresa que trabalho.^^
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 14:33
por h1e1
Vou elaborar um fonte teste, para ver se cria o arquivo .bc para entender como funciona o debug.
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 15:32
por alxsts
Olá!
Basicamente deverá conter linhas parecidas com as linhas abaixo, com o parâmetro
-dCódigo: Selecionar todos
HARBOURFLAGS = -b -m -w0
CFLAG1 = -OS $(SHELL) $(CFLAGS) -d -c -L$(HB_DIR)\lib
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 15:53
por h1e1
Olá
alxsts escreveu:Olá!
Basicamente deverá conter linhas parecidas com as linhas abaixo, com o parâmetro
-dCódigo: Selecionar todos
HARBOURFLAGS = -b -m -w0
CFLAG1 = -OS $(SHELL) $(CFLAGS) -d -c -L$(HB_DIR)\lib
Encontrei, mas está diferente, do que foi passado.
Código: Selecionar todos
HARBOURFLAGS = -w0
CFLAG1 = -OS $(SHELL) $(CFLAGS) -d -c -L$(HB_DIR)\lib;$(FWH)\lib
E como faz para executar o debug?
Existe debug para o xHarbour?
Enviado: 19 Ago 2015 18:25
por alxsts
Olá!
Já que você utiliza o xDev, tente configurar seu projeto para utilização do Debugger.
Selecione o teu projeto na árvore do lado esquerdo da tela. Acesse o menu e selecione Projeto > Propriedades... Na tela que se abre, selecione a opção mostrada abaixo e salve clicando em Salvar.

- Configuração do xDev
Para testar, crie um novo programa no xDev e digite as linhas mostradas acima. Compile e teste. O Debugger deverá ser aberto ao passar pela linha 5.
Caso não consiga, altere a linha
do teu script atual e acrescente a chave -b:
Existe debug para o xHarbour?
Enviado: 20 Ago 2015 13:23
por Itamar M. Lins Jr.
Ola!
Debug Visual é o da Hwgui que inclusive o Pritpal (HBIDE) pediu permissão ao Alexander e incorporou na HBIDE. Então a HBIDE tem debug!
Funciona tanto nos GT´s ou em qualquer visual, tanto faz ser Harbour ou xHarbour.
http://www.kresin.ru/en/debugger.html
Já o Debug nativo do Harbour é muito parecido com o do clipper e seu uso idêntico.
Saudações,
Itamar M. Lins Jr.
Existe debug para o xHarbour?
Enviado: 21 Ago 2015 19:48
por Itamar M. Lins Jr.
Ola!
porém os recursos não são os mesmos. Faltam alguns.
Você está falando do xHarbour. Já usou do debug do Harbour ? Tem coisas que só foram corrigidas no Harbour 3.2 e 3.4
O xHarbour está parado, apenas copiando o que pode ser copiado do Harbour.
Código: Selecionar todos
2015-04-01 14:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
! fixed typo in my previous commit for AltD() function detection
Thanks to Franček Prijatelj for reporting the problem and Abe
for self contain example
2015-03-27 16:21 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
% small optimizations
2014-11-29 06:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgtmenu.prg
* src/debug/dbgtwin.prg
* src/debug/debugger.prg
! replaced SaveScreen()/RestScreen() with
__dbgSaveScreen()/__dbgRestScreen() to fix problems with unicode
characters which do not exists in HVM CP.
E muitas outras correções do Viktor HB3.4 que só tem no fork dele.
Saudações,
Itamar M. Lins Jr.
Existe debug para o xHarbour?
Enviado: 21 Ago 2015 20:13
por alxsts
Olá!
Sim, me referi ao xHarbour que é a ferramenta usada pelo colega.
Obrigado por atualizar as informações acerca do debugger do Harbour. Quando puder vou conferir.
Existe debug para o xHarbour?
Enviado: 24 Ago 2015 08:43
por h1e1
Olhei no meu xDev e verifiquei que o xDev como padrão, vem com o debug ativo, só que o projeto da empresa que uso, vem com outras configurções.
Muito obrigado pela ajuda.
Existe debug para o xHarbour?
Enviado: 27 Ago 2015 20:47
por JoséQuintas
Uma correção importante:
O parâmetro para debug NÃO é -d
O parâmetro é -b
E para acionar o debug depois é Alt-D.
E convém lembrar também o seguinte:
1) Compilar o sistema inteiro pra debug pode atrapalhar ao invés de ajudar, porque tem muita coisa pra acompanhar.
Às vezes, melhor compilar apenas o fonte que quiser acompanhar pelo debug usando o -b
2) Se estiver usando o default do Harbour pra linqueditar, é confuso o local dos temporários, então pode ser uma boa opção salvar uma alteração no fonte para forçar com que ele seja recompilado.
Neste ponto, no clipper era só apagar o .OBJ.
No Harbour, seria necessário apagar o .OBJ (ou .O) e o .C, ou editar o fonte, que é mais prático.
3) O debug só pode ser ativado em momentos de acionamento do teclado, tipo Inkey(0).
Então, às vezes é necessário colocar um Inkey(0) caso a rotina não faça uso do teclado.
Existe debug para o xHarbour?
Enviado: 28 Ago 2015 00:20
por alxsts
Olá!
JoséQuintas escreveu:O parâmetro para debug NÃO é -d
O parâmetro é -b
Bem observado. Foi erro de digitação. Como se pode observar no exemplo de código fornecido, o parâmetro é -b.
Em um post seguinte, fica mais claro:
alxsts escreveu:...do teu script atual e acrescente a chave -b: